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 2014/10/11 23:21:11 UTC

svn commit: r1631120 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java

Author: tilman
Date: Sat Oct 11 21:21:11 2014
New Revision: 1631120

URL: http://svn.apache.org/r1631120
Log:
PDFBOX-1833: Tidy up logic (should not change the parsing result), as suggested by Jens Kapitza

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java?rev=1631120&r1=1631119&r2=1631120&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java Sat Oct 11 21:21:11 2014
@@ -323,41 +323,13 @@ public abstract class BaseParser
                                 if(read==D)
                                 {
                                     read = pdfSource.read();
-                                    if(read==S) 
-                                    {
-                                        read = pdfSource.read();
-                                        if(read==T) 
-                                        {
-                                            read = pdfSource.read();
-                                            if(read==R) 
-                                            {
-                                                read = pdfSource.read();
-                                                if(read==E) 
-                                                {
-                                                    read = pdfSource.read();
-                                                    if(read==A) 
-                                                    {
-                                                        read = pdfSource.read();
-                                                        if(read==M) 
-                                                        {
-                                                            return obj; // we're done reading this object!
-                                                        }
-                                                    }
-                                                }
-                                            }
-                                        }
-                                    } 
-                                    else if(read==O) 
+                                    boolean isStream = read == S && pdfSource.read() == T && pdfSource.read() == R
+                                            && pdfSource.read() == E && pdfSource.read() == A && pdfSource.read() == M;
+
+                                    boolean isObj = !isStream && read == O && pdfSource.read() == B && pdfSource.read() == J;
+                                    if (isStream || isObj)
                                     {
-                                        read = pdfSource.read();
-                                        if(read==B) 
-                                        {
-                                            read = pdfSource.read();
-                                            if(read==J) 
-                                            {
-                                                return obj; // we're done reading this object!
-                                            }
-                                        }
+                                        return obj; // we're done reading this object!
                                     }
                                 }
                             }