[ 
https://issues.apache.org/jira/browse/PDFBOX-1013?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andreas Lehmkühler updated PDFBOX-1013:
---------------------------------------

      Description: 
The problem is that the toString method is called on objects which may have 
been returned as null

The suggested fix to this, in the attached patch is to check if null, then 
write an empty string

        String s = "Shading " + shadingname + "\n"
            + "\tShadingType: " + getShadingType() + "\n"
            + "\tColorSpace: " + sColorSpace + "\n"
            + "\tAntiAlias: " + getAntiAlias() + "\n"
            + "\tCoords: " + (getCoords() != null ? getCoords().toString() : 
"") + "\n"
            + "\tDomain: " + (getDomain() != null ? getDomain().toString() : 
"") + "\n"
            + "\tFunction: " + sFunction + "\n"
            + "\tExtend: " + (getExtend() != null ? getExtend().toString() : 
"") + "\n"
            + "\tRaw Value:\n" +


<Error message as dumped to log>

 INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: BDC
   INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: BX
   WARN [main] (SHFill.java63) - java.lang.NullPointerException
  java.lang.NullPointerException
        at 
org.apache.pdfbox.pdmodel.graphics.PDShading.toString(PDShading.java:204)
        at org.apache.pdfbox.pdfviewer.PageDrawer.SHFill(PageDrawer.java:398)
        at 
org.apache.pdfbox.util.operator.pagedrawer.SHFill.process(SHFill.java:58)
        at 
org.apache.pdfbox.util.PDFStreamEngine.processOperator(PDFStreamEngine.java:551)
        at 
org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:274)
        at 
org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:251)
        at 
org.apache.pdfbox.util.PDFStreamEngine.processStream(PDFStreamEngine.java:225)
        at org.apache.pdfbox.pdfviewer.PageDrawer.drawPage(PageDrawer.java:107)
        at org.apache.pdfbox.pdmodel.PDPage.convertToImage(PDPage.java:722)
 INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: EX
   INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: EMC

</Error message as dumped to log>


  was:

The problem is that the toString method is called on objects which may have 
been returned as null

The suggested fix to this, in the attached patch is to check if null, then 
write an empty string

        String s = "Shading " + shadingname + "\n"
            + "\tShadingType: " + getShadingType() + "\n"
            + "\tColorSpace: " + sColorSpace + "\n"
            + "\tAntiAlias: " + getAntiAlias() + "\n"
            + "\tCoords: " + (getCoords() != null ? getCoords().toString() : 
"") + "\n"
            + "\tDomain: " + (getDomain() != null ? getDomain().toString() : 
"") + "\n"
            + "\tFunction: " + sFunction + "\n"
            + "\tExtend: " + (getExtend() != null ? getExtend().toString() : 
"") + "\n"
            + "\tRaw Value:\n" +


<Error message as dumped to log>

 INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: BDC
   INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: BX
   WARN [main] (SHFill.java63) - java.lang.NullPointerException
  java.lang.NullPointerException
        at 
org.apache.pdfbox.pdmodel.graphics.PDShading.toString(PDShading.java:204)
        at org.apache.pdfbox.pdfviewer.PageDrawer.SHFill(PageDrawer.java:398)
        at 
org.apache.pdfbox.util.operator.pagedrawer.SHFill.process(SHFill.java:58)
        at 
org.apache.pdfbox.util.PDFStreamEngine.processOperator(PDFStreamEngine.java:551)
        at 
org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:274)
        at 
org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:251)
        at 
org.apache.pdfbox.util.PDFStreamEngine.processStream(PDFStreamEngine.java:225)
        at org.apache.pdfbox.pdfviewer.PageDrawer.drawPage(PageDrawer.java:107)
        at org.apache.pdfbox.pdmodel.PDPage.convertToImage(PDPage.java:722)
 INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: EX
   INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: EMC

</Error message as dumped to log>


    Fix Version/s:     (was: 1.6.0)

> NullPointerException in 
> org.apache.pdfbox.pdmodel.graphics.PDShading.toString, when getDomain() 
> returns null
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: PDFBOX-1013
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-1013
>             Project: PDFBox
>          Issue Type: Bug
>          Components: PDModel
>    Affects Versions: 1.5.0
>         Environment: Windows 7, and Ubuntu 8.04
> PDFBox 1.5.0
>            Reporter: Craig Stires
>            Priority: Minor
>         Attachments: NoDomain_004k.pdf, pdfbox_pdshading_tostring_npe.patch
>
>
> The problem is that the toString method is called on objects which may have 
> been returned as null
> The suggested fix to this, in the attached patch is to check if null, then 
> write an empty string
>         String s = "Shading " + shadingname + "\n"
>             + "\tShadingType: " + getShadingType() + "\n"
>             + "\tColorSpace: " + sColorSpace + "\n"
>             + "\tAntiAlias: " + getAntiAlias() + "\n"
>             + "\tCoords: " + (getCoords() != null ? getCoords().toString() : 
> "") + "\n"
>             + "\tDomain: " + (getDomain() != null ? getDomain().toString() : 
> "") + "\n"
>             + "\tFunction: " + sFunction + "\n"
>             + "\tExtend: " + (getExtend() != null ? getExtend().toString() : 
> "") + "\n"
>             + "\tRaw Value:\n" +
> <Error message as dumped to log>
>  INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: BDC
>    INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: BX
>    WARN [main] (SHFill.java63) - java.lang.NullPointerException
>   java.lang.NullPointerException
>         at 
> org.apache.pdfbox.pdmodel.graphics.PDShading.toString(PDShading.java:204)
>         at org.apache.pdfbox.pdfviewer.PageDrawer.SHFill(PageDrawer.java:398)
>         at 
> org.apache.pdfbox.util.operator.pagedrawer.SHFill.process(SHFill.java:58)
>         at 
> org.apache.pdfbox.util.PDFStreamEngine.processOperator(PDFStreamEngine.java:551)
>         at 
> org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:274)
>         at 
> org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:251)
>         at 
> org.apache.pdfbox.util.PDFStreamEngine.processStream(PDFStreamEngine.java:225)
>         at 
> org.apache.pdfbox.pdfviewer.PageDrawer.drawPage(PageDrawer.java:107)
>         at org.apache.pdfbox.pdmodel.PDPage.convertToImage(PDPage.java:722)
>  INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: EX
>    INFO [main] (PDFStreamEngine.java557) - unsupported/disabled operation: EMC
> </Error message as dumped to log>

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to