Author: onealj
Date: Wed Oct 18 14:08:43 2017
New Revision: 1812516

URL: http://svn.apache.org/viewvc?rev=1812516&view=rev
Log:
cleanup for r1812476: avoid NPEs from string.isEmpty()

Modified:
    poi/trunk/src/java/org/apache/poi/poifs/crypt/CryptoFunctions.java
    poi/trunk/src/java/org/apache/poi/ss/formula/eval/StringEval.java
    poi/trunk/src/java/org/apache/poi/ss/usermodel/FractionFormat.java
    
poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/services/RelationshipTransformService.java
    poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java

Modified: poi/trunk/src/java/org/apache/poi/poifs/crypt/CryptoFunctions.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/crypt/CryptoFunctions.java?rev=1812516&r1=1812515&r2=1812516&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/poifs/crypt/CryptoFunctions.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/poifs/crypt/CryptoFunctions.java Wed Oct 
18 14:08:43 2017
@@ -374,6 +374,10 @@ public class CryptoFunctions {
      * @return the verifier (actually a short value)
      */
     public static int createXorVerifier1(String password) {
+        if (password == null) {
+            throw new IllegalArgumentException("Password cannot be null");
+        }
+
         byte[] arrByteChars = toAnsiPassword(password);
         
         // SET Verifier TO 0x0000
@@ -412,6 +416,10 @@ public class CryptoFunctions {
      * @see <a 
href="http://www.aspose.com/blogs/aspose-blogs/vladimir-averkin/archive/2007/08/20/funny-how-the-new-powerful-cryptography-implemented-in-word-2007-turns-it-into-a-perfect-tool-for-document-password-removal.html";>Funny:
 How the new powerful cryptography implemented in Word 2007 turns it into a 
perfect tool for document password removal.</a>
      */
     public static int createXorVerifier2(String password) {
+        if (password == null) {
+            throw new IllegalArgumentException("Password cannot be null");
+        }
+
         //Array to hold Key Values
         byte[] generatedKey = new byte[4];
 

Modified: poi/trunk/src/java/org/apache/poi/ss/formula/eval/StringEval.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/formula/eval/StringEval.java?rev=1812516&r1=1812515&r2=1812516&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ss/formula/eval/StringEval.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/formula/eval/StringEval.java Wed Oct 
18 14:08:43 2017
@@ -17,6 +17,8 @@
 
 package org.apache.poi.ss.formula.eval;
 
+//import org.checkerframework.checker.nullness.qual.NonNull;
+
 import org.apache.poi.ss.formula.ptg.Ptg;
 import org.apache.poi.ss.formula.ptg.StringPtg;
 
@@ -27,6 +29,7 @@ public final class StringEval implements
 
        public static final StringEval EMPTY_INSTANCE = new StringEval("");
 
+       //@NotNull
        private final String _value;
 
        public StringEval(Ptg ptg) {

Modified: poi/trunk/src/java/org/apache/poi/ss/usermodel/FractionFormat.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/usermodel/FractionFormat.java?rev=1812516&r1=1812515&r2=1812516&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ss/usermodel/FractionFormat.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/ss/usermodel/FractionFormat.java Wed Oct 
18 14:08:43 2017
@@ -150,7 +150,7 @@ public class FractionFormat extends Form
         }
         
         //if whole part has to go into the numerator
-        if (wholePartFormatString.isEmpty()){
+        if (wholePartFormatString == null || wholePartFormatString.isEmpty()){
             int trueNum = 
(fract.getDenominator()*(int)wholePart)+fract.getNumerator();
             sb.append(trueNum).append("/").append(fract.getDenominator());
             return sb.toString();

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/services/RelationshipTransformService.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/services/RelationshipTransformService.java?rev=1812516&r1=1812515&r2=1812516&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/services/RelationshipTransformService.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/services/RelationshipTransformService.java
 Wed Oct 18 14:08:43 2017
@@ -205,7 +205,7 @@ public class RelationshipTransformServic
                 String id = el.getAttribute("Id");
                 if (sourceIds.contains(id)) {
                     String targetMode = el.getAttribute("TargetMode");
-                    if (targetMode.isEmpty()) {
+                    if (targetMode == null || targetMode.isEmpty()) {
                         el.setAttribute("TargetMode", "Internal");
                     }
                     rsList.put(id, el);

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java?rev=1812516&r1=1812515&r2=1812516&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java 
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java Wed 
Oct 18 14:08:43 2017
@@ -845,7 +845,7 @@ public class XSLFTextRun implements Text
                 }
                 // SYMBOL is missing
                 
-                if (font == null || !font.isSetTypeface() || 
font.getTypeface().isEmpty()) {
+                if (font == null || !font.isSetTypeface() || 
"".equals(font.getTypeface())) {
                     font = coll.getLatin();
                 }
             }



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to