From 7cd913f036c369e67e95661467449cd872cb266c Mon Sep 17 00:00:00 2001 From: Jeremias Maerki Date: Mon, 7 Feb 2005 11:00:19 +0000 Subject: [PATCH] Fix for adding absolutely positioned block without children. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198386 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/fop/render/AbstractRenderer.java | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/java/org/apache/fop/render/AbstractRenderer.java b/src/java/org/apache/fop/render/AbstractRenderer.java index 25db6080b..ab017e007 100644 --- a/src/java/org/apache/fop/render/AbstractRenderer.java +++ b/src/java/org/apache/fop/render/AbstractRenderer.java @@ -513,12 +513,14 @@ public abstract class AbstractRenderer */ protected void renderBlock(Block block) { List children = block.getChildAreas(); - if (children == null) { - handleBlockTraits(block); - // simply move position - currentBPPosition += block.getAllocBPD(); - } else if (block instanceof BlockViewport) { - renderBlockViewport((BlockViewport) block, children); + if (block instanceof BlockViewport) { + if (children != null) { + renderBlockViewport((BlockViewport) block, children); + } else { + handleBlockTraits(block); + // simply move position + currentBPPosition += block.getAllocBPD(); + } } else { // save position and offset int saveIP = currentIPPosition; @@ -530,7 +532,9 @@ public abstract class AbstractRenderer handleBlockTraits(block); - renderBlocks(block, children); + if (children != null) { + renderBlocks(block, children); + } // absolute blocks do not effect the layout currentBPPosition = saveBP; @@ -541,7 +545,9 @@ public abstract class AbstractRenderer handleBlockTraits(block); - renderBlocks(block, children); + if (children != null) { + renderBlocks(block, children); + } // stacked and relative blocks effect stacking currentIPPosition = saveIP; -- 2.39.5