]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
Bugfix: Block.handleWhitespace() causes whitespace to be scanned multiple times witho...
authorJeremias Maerki <jeremias@apache.org>
Tue, 9 Aug 2005 14:28:20 +0000 (14:28 +0000)
committerJeremias Maerki <jeremias@apache.org>
Tue, 9 Aug 2005 14:28:20 +0000 (14:28 +0000)
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/inlineblock@231041 13f79535-47bb-0310-9956-ffa450edef68

src/java/org/apache/fop/fo/NullCharIterator.java [new file with mode: 0644]
src/java/org/apache/fop/fo/flow/Block.java

diff --git a/src/java/org/apache/fop/fo/NullCharIterator.java b/src/java/org/apache/fop/fo/NullCharIterator.java
new file mode 100644 (file)
index 0000000..01c054c
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ * Copyright 2005 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* $Id$ */
+
+package org.apache.fop.fo;
+
+import java.util.NoSuchElementException;
+
+/**
+ * Class providing an iterator for zero characters. Used by the Block FO.
+ */
+public class NullCharIterator extends CharIterator {
+
+    private static CharIterator instance;
+    
+    public static CharIterator getInstance() {
+        if (instance == null) {
+            instance = new NullCharIterator();
+        }
+        return instance;
+    }
+
+    /**
+     * Constructor
+     */
+    public NullCharIterator() {
+        //nop
+    }
+
+    /** @see java.util.Iterator#hasNext() */
+    public boolean hasNext() {
+        return false;
+    }
+
+    /** @see org.apache.fop.fo.CharIterator#nextChar() */
+    public char nextChar() throws NoSuchElementException {
+        throw new NoSuchElementException();
+    }
+
+}
+
index 50f04a28ea047dfe10261bb1fa269c60f984cf19..f5d8ceb052d659194a5ce2c193880bf1eae41419 100644 (file)
@@ -29,6 +29,7 @@ import org.apache.fop.fo.Constants;
 import org.apache.fop.fo.FONode;
 import org.apache.fop.fo.FOText;
 import org.apache.fop.fo.FObjMixed;
+import org.apache.fop.fo.NullCharIterator;
 import org.apache.fop.fo.PropertyList;
 import org.apache.fop.fo.PropertySets;
 import org.apache.fop.fo.RecursiveCharIterator;
@@ -507,6 +508,11 @@ public class Block extends FObjMixed {
         }
     }
      
+    /** @see org.apache.fop.fo.FONode#charIterator() */
+    public CharIterator charIterator() {
+        return NullCharIterator.getInstance();
+    }
+
     /**
      * @see org.apache.fop.fo.FONode#getName()
      */