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 2017/04/22 14:38:11 UTC

svn commit: r1792290 - in /pdfbox/trunk/fontbox/src: main/java/org/apache/fontbox/cmap/CMap.java main/java/org/apache/fontbox/cmap/CodespaceRange.java test/java/org/apache/fontbox/cmap/TestCMapParser.java

Author: tilman
Date: Sat Apr 22 14:38:11 2017
New Revision: 1792290

URL: http://svn.apache.org/viewvc?rev=1792290&view=rev
Log:
PDFBOX-2852: remove double code

Modified:
    pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMap.java
    pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CodespaceRange.java
    pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/cmap/TestCMapParser.java

Modified: pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMap.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMap.java?rev=1792290&r1=1792289&r2=1792290&view=diff
==============================================================================
--- pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMap.java (original)
+++ pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CMap.java Sat Apr 22 14:38:11 2017
@@ -126,7 +126,7 @@ public class CMap
     /**
      * Returns an int for the given byte array
      */
-    private int toInt(byte[] data, int dataLen)
+    static int toInt(byte[] data, int dataLen)
     {
         int code = 0;
         for (int i = 0; i < dataLen; ++i)

Modified: pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CodespaceRange.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CodespaceRange.java?rev=1792290&r1=1792289&r2=1792290&view=diff
==============================================================================
--- pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CodespaceRange.java (original)
+++ pdfbox/trunk/fontbox/src/main/java/org/apache/fontbox/cmap/CodespaceRange.java Sat Apr 22 14:38:11 2017
@@ -16,6 +16,7 @@
  */
 package org.apache.fontbox.cmap;
 
+import static org.apache.fontbox.cmap.CMap.toInt;
 
 /**
  * This represents a single entry in the codespace range.
@@ -95,19 +96,6 @@ public class CodespaceRange
     }
 
     /**
-     * Returns an int for the given byte array
-     */
-    private int toInt(byte[] data, int dataLen)
-    {
-        int code = 0;
-        for (int i = 0; i < dataLen; ++i)
-        {
-            code <<= 8;
-            code |= (data[i] & 0xFF);
-        }
-        return code;
-    }
-    /**
      * Returns true if the given code bytes match this codespace range.
      */
     public boolean isFullMatch(byte[] code, int codeLen)

Modified: pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/cmap/TestCMapParser.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/cmap/TestCMapParser.java?rev=1792290&r1=1792289&r2=1792290&view=diff
==============================================================================
--- pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/cmap/TestCMapParser.java (original)
+++ pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/cmap/TestCMapParser.java Sat Apr 22 14:38:11 2017
@@ -22,6 +22,8 @@ import java.io.IOException;
 
 import junit.framework.TestCase;
 
+import static org.apache.fontbox.cmap.CMap.toInt;
+
 /**
  * This will test the CMapParser implementation.
  *
@@ -44,19 +46,19 @@ public class TestCMapParser extends Test
 
         // char mappings
         byte[] bytes1 = {0, 1};
-        assertEquals("bytes 00 01 from bfrange <0001> <0009> <0041>", "A", cMap.toUnicode(toInt(bytes1)));
+        assertEquals("bytes 00 01 from bfrange <0001> <0009> <0041>", "A", cMap.toUnicode(toInt(bytes1,bytes1.length)));
 
         byte[] bytes2 = {1, 00};
         String str2 = "0";
-        assertEquals("bytes 01 00 from bfrange <0100> <0109> <0030>", str2, cMap.toUnicode(toInt(bytes2)));
+        assertEquals("bytes 01 00 from bfrange <0100> <0109> <0030>", str2, cMap.toUnicode(toInt(bytes2,bytes2.length)));
 
         byte[] bytes3 = {0, 10};
         String str3 = "*";
-        assertEquals("bytes 00 0A from bfchar <000A> <002A>", str3, cMap.toUnicode(toInt(bytes3)));
+        assertEquals("bytes 00 0A from bfchar <000A> <002A>", str3, cMap.toUnicode(toInt(bytes3,bytes3.length)));
 
         byte[] bytes4 = {1, 10};
         String str4 = "+";
-        assertEquals("bytes 01 0A from bfchar <010A> <002B>", str4, cMap.toUnicode(toInt(bytes4)));
+        assertEquals("bytes 01 0A from bfchar <010A> <002B>", str4, cMap.toUnicode(toInt(bytes4,bytes4.length)));
 
         // CID mappings
         int cid1 = 65;
@@ -71,17 +73,6 @@ public class TestCMapParser extends Test
         assertEquals("CID 520 from cidchar <0208> 520", strCID3, cMap.toCID(cid3));
     }
 
-    private int toInt(byte[] data)
-    {
-        int code = 0;
-        for (byte b : data)
-        {
-            code <<= 8;
-            code |= b & 0xFF;
-        }
-        return code;
-    }
-
     /**
      * Test the parser against a valid, but poorly formatted CMap file.
      * @throws IOException If something went wrong