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!
                                     }
                                 }
                             }


Reply via email to