You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2015/07/03 18:41:07 UTC
svn commit: r1689048 - in
/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane:
FieldFlag.java FlagBitsPane.java FlagBitsPaneView.java
Author: tilman
Date: Fri Jul 3 16:41:06 2015
New Revision: 1689048
URL: http://svn.apache.org/r1689048
Log:
PDFBOX-2530: NPE bugfix, as done by Khyrul Bashar in GSoC2015
Modified:
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FieldFlag.java
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPane.java
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPaneView.java
Modified: pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FieldFlag.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FieldFlag.java?rev=1689048&r1=1689047&r2=1689048&view=diff
==============================================================================
--- pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FieldFlag.java (original)
+++ pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FieldFlag.java Fri Jul 3 16:41:06 2015
@@ -40,15 +40,16 @@ class FieldFlag extends Flag
@Override
String getFlagType()
{
- if (dictionary.getCOSName(COSName.FT).equals(COSName.TX))
+ COSName fieldType = dictionary.getCOSName(COSName.FT);
+ if (COSName.TX.equals(fieldType))
{
return "Text field flag";
}
- else if (dictionary.getCOSName(COSName.FT).equals(COSName.BTN))
+ else if (COSName.BTN.equals(fieldType))
{
return "Button field flag";
}
- else if (dictionary.getCOSName(COSName.FT).equals(COSName.CH))
+ else if (COSName.CH.equals(fieldType))
{
return "Choice field flag";
}
@@ -65,16 +66,17 @@ class FieldFlag extends Flag
Object[][] getFlagBits()
{
int flagValue = dictionary.getInt(COSName.FF);
+ COSName fieldType = dictionary.getCOSName(COSName.FT);
- if (dictionary.getCOSName(COSName.FT).equals(COSName.TX))
+ if (COSName.TX.equals(fieldType))
{
return getTextFieldFlagBits(flagValue);
}
- else if (dictionary.getCOSName(COSName.FT).equals(COSName.BTN))
+ else if (COSName.BTN.equals(fieldType))
{
return getButtonFieldFlagBits(flagValue);
}
- else if (dictionary.getCOSName(COSName.FT).equals(COSName.CH))
+ else if (COSName.CH.equals(fieldType))
{
return getChoiceFieldFlagBits(flagValue);
}
Modified: pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPane.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPane.java?rev=1689048&r1=1689047&r2=1689048&view=diff
==============================================================================
--- pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPane.java (original)
+++ pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPane.java Fri Jul 3 16:41:06 2015
@@ -43,28 +43,28 @@ public class FlagBitsPane
private void createPane(final COSDictionary dictionary, final COSName flagType)
{
Flag flag;
- if (flagType.equals(COSName.FLAGS))
+ if (COSName.FLAGS.equals(flagType))
{
flag = new FontFlag(dictionary);
view = new FlagBitsPaneView(
flag.getFlagType(), flag.getFlagValue(), flag.getFlagBits(), flag.getColumnNames());
}
- if (flagType.equals(COSName.F))
+ if (COSName.F.equals(flagType))
{
flag = new AnnotFlag(dictionary);
view = new FlagBitsPaneView(
flag.getFlagType(), flag.getFlagValue(), flag.getFlagBits(), flag.getColumnNames());
}
- if (flagType.equals(COSName.FF))
+ if (COSName.FF.equals(flagType))
{
flag = new FieldFlag(dictionary);
view = new FlagBitsPaneView(
flag.getFlagType(), flag.getFlagValue(), flag.getFlagBits(), flag.getColumnNames());
}
- if (flagType.equals(COSName.PANOSE))
+ if (COSName.PANOSE.equals(flagType))
{
flag = new PanoseFlag(dictionary);
view = new FlagBitsPaneView(
Modified: pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPaneView.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPaneView.java?rev=1689048&r1=1689047&r2=1689048&view=diff
==============================================================================
--- pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPaneView.java (original)
+++ pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/flagbitspane/FlagBitsPaneView.java Fri Jul 3 16:41:06 2015
@@ -56,7 +56,10 @@ class FlagBitsPaneView
this.columnNames = columnNames;
panel = new JPanel();
- createView();
+ if (flagValue != null && tableData != null)
+ {
+ createView();
+ }
}
private void createView()