Author: spepping
Date: Fri Sep 17 08:52:38 2010
New Revision: 998021

URL: http://svn.apache.org/viewvc?rev=998021&view=rev
Log:
Merging r995169 through r998017 into '.'

Added:
    
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/afp/apps/  
 (props changed)
      - copied from r998017, 
xmlgraphics/fop/trunk/src/java/org/apache/fop/afp/apps/
    
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/afp/apps/FontPatternExtractor.java
      - copied unchanged from r998017, 
xmlgraphics/fop/trunk/src/java/org/apache/fop/afp/apps/FontPatternExtractor.java
    
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/afp/parser/
   (props changed)
      - copied from r998017, 
xmlgraphics/fop/trunk/src/java/org/apache/fop/afp/parser/
    
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/afp/parser/MODCAParser.java
      - copied unchanged from r998017, 
xmlgraphics/fop/trunk/src/java/org/apache/fop/afp/parser/MODCAParser.java
    
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/afp/parser/UnparsedStructuredField.java
      - copied unchanged from r998017, 
xmlgraphics/fop/trunk/src/java/org/apache/fop/afp/parser/UnparsedStructuredField.java
Modified:
    xmlgraphics/fop/branches/Temp_ComplexScripts/   (props changed)
    xmlgraphics/fop/branches/Temp_ComplexScripts/build.xml
    
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/cli/CommandLineOptions.java
    
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/pdf/PDFImageHandlerSVG.java
    
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/ps/PSImageHandlerSVG.java
    
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/util/ColorExt.java
   (props changed)
    xmlgraphics/fop/branches/Temp_ComplexScripts/status.xml

Propchange: xmlgraphics/fop/branches/Temp_ComplexScripts/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 17 08:52:38 2010
@@ -1,4 +1,4 @@
 /xmlgraphics/fop/branches/Temp_AreaTreeNewDesign:603620-746655
 /xmlgraphics/fop/branches/fop-0_95:684572,688085,688696
 /xmlgraphics/fop/branches/fop-1_0:959975-964707
-/xmlgraphics/fop/trunk:981451-995168
+/xmlgraphics/fop/trunk:981451-998017

Modified: xmlgraphics/fop/branches/Temp_ComplexScripts/build.xml
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_ComplexScripts/build.xml?rev=998021&r1=998020&r2=998021&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_ComplexScripts/build.xml (original)
+++ xmlgraphics/fop/branches/Temp_ComplexScripts/build.xml Fri Sep 17 08:52:38 
2010
@@ -195,8 +195,11 @@ list of possible build targets.
   <property name="fotree.disabled" value="test/fotree/disabled-testcases.xml"/>
   <property name="dist.bin.dir" value="${basedir}/dist-bin"/>
   <property name="dist.src.dir" value="${basedir}/dist-src"/>
+  <property name="nightly.dir" value="${basedir}/nightly"/>
   <property name="dist.bin.result.dir" 
value="${dist.bin.dir}/${name}-${version}"/>
   <property name="dist.src.result.dir" 
value="${dist.src.dir}/${name}-${version}"/>
+  <tstamp/>
+  <property name="nightly.result.dir" 
value="${nightly.dir}/${name}-${DSTAMP}"/>
   <property name="samedir" value="${basedir}"/>
   <property name="junit.reports.dir" value="${build.dir}/test-reports"/>
   <property name="junit.html.reports.dir" 
value="${build.dir}/test-reports/html"/>
@@ -1363,6 +1366,50 @@ NOTE:
     <move file="${build.dir}/${name}-${version}-bundle.jar" 
todir="${basedir}"/>
   </target>
 <!-- =================================================================== -->
+<!-- Nightly builds                                                      -->
+<!-- =================================================================== -->
+  <target name="junit-nightly-build" 
depends="junit-userconfig,junit-text-linebreak,junit-fotree">
+       <fail>
+         <condition>
+           <or>
+             <isset property="fop.junit.error"/>
+             <isset property="fop.junit.failure"/>
+        </or>
+      </condition>
+NOTE:
+**************************************************************************
+* One or more of the Junit tests had Failures or Errors or were skipped! *
+*         Please check the output above for relevant messages.           *
+*    Or use the "junit-reports" target to generate HTML test reports.    *
+**************************************************************************
+    </fail>
+    <echo>All Junit tests passed!</echo>
+  </target>
+  <target name="nightly-build" depends="clean,jar-main,junit-nightly-build">
+    <echo message="Building the binary distribution files (zip,tar)"/>
+    <delete dir="${nightly.dir}"/>
+    <mkdir dir="${nightly.result.dir}"/>
+    <copy todir="${nightly.result.dir}">
+      <fileset refid="dist.bin"/>
+      <fileset refid="dist.bin.lib"/>
+    </copy>
+    <mkdir dir="${nightly.result.dir}/build"/>
+    <copy todir="${nightly.result.dir}/build" file="build/fop.jar"/>
+    <chmod file="${nightly.result.dir}/fop" perm="ugo+rx"/>
+    <zip zipfile="${name}-${DSTAMP}-bin.zip" basedir="${nightly.dir}" 
includes="**"/>
+    <tar longfile="gnu" destfile="${name}-${DSTAMP}-bin.tar">
+      <tarfileset dir="${nightly.dir}" mode="755">
+        <include name="${name}-${DSTAMP}/fop"/>
+      </tarfileset>
+      <tarfileset dir="${nightly.dir}">
+        <include name="**"/>
+        <exclude name="${name}-${DSTAMP}/fop"/>
+      </tarfileset>
+    </tar>
+    <gzip zipfile="${name}-${DSTAMP}-bin.tar.gz" 
src="${name}-${DSTAMP}-bin.tar"/>
+    <delete file="${name}-${DSTAMP}-bin.tar"/>
+  </target>
+<!-- =================================================================== -->
 <!-- Generate examples                                                   -->
 <!-- =================================================================== -->
   <target name="examples" depends="package" description="Generates the example 
files">

Propchange: 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/afp/apps/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Fri Sep 17 08:52:38 2010
@@ -0,0 +1,5 @@
+/xmlgraphics/commons/branches/commons-1_4/src/java/org/apache/xmlgraphics/afp/apps:950384-962801
+/xmlgraphics/fop/branches/Temp_AreaTreeNewDesign/src/java/org/apache/fop/afp/apps:603620-746655
+/xmlgraphics/fop/branches/fop-0_95/src/java/org/apache/fop/afp/apps:684572,688085,688696
+/xmlgraphics/fop/branches/fop-1_0/src/java/org/apache/fop/afp/apps:959975-964707
+/xmlgraphics/fop/trunk/src/java/org/apache/fop/afp/apps:981451-998017

Propchange: 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/afp/parser/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Fri Sep 17 08:52:38 2010
@@ -0,0 +1,5 @@
+/xmlgraphics/commons/branches/commons-1_4/src/java/org/apache/xmlgraphics/afp/parser:950384-962801
+/xmlgraphics/fop/branches/Temp_AreaTreeNewDesign/src/java/org/apache/fop/afp/parser:603620-746655
+/xmlgraphics/fop/branches/fop-0_95/src/java/org/apache/fop/afp/parser:684572,688085,688696
+/xmlgraphics/fop/branches/fop-1_0/src/java/org/apache/fop/afp/parser:959975-964707
+/xmlgraphics/fop/trunk/src/java/org/apache/fop/afp/parser:981451-998017

Modified: 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/cli/CommandLineOptions.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/cli/CommandLineOptions.java?rev=998021&r1=998020&r2=998021&view=diff
==============================================================================
--- 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/cli/CommandLineOptions.java
 (original)
+++ 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/cli/CommandLineOptions.java
 Fri Sep 17 08:52:38 2010
@@ -1231,7 +1231,7 @@ public class CommandLineOptions {
             + "  -out mime outfile input will be rendered using the given MIME 
type\n"
             + "                    (outfile req'd) Example: \"-out 
application/pdf D:\\out.pdf\"\n"
             + "                    (Tip: \"-out list\" prints the list of 
supported MIME types"
-            + "                    and exits)\n"
+            + " and exits)\n"
             //+ "  -mif outfile      input will be rendered as MIF 
(FrameMaker) (outfile req'd)\n"
             //+ "                    Experimental feature - requires 
additional fop-sandbox.jar.\n"
             + "  -svg outfile      input will be rendered as an SVG slides 
file (outfile req'd) \n"

Modified: 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/pdf/PDFImageHandlerSVG.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/pdf/PDFImageHandlerSVG.java?rev=998021&r1=998020&r2=998021&view=diff
==============================================================================
--- 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/pdf/PDFImageHandlerSVG.java
 (original)
+++ 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/pdf/PDFImageHandlerSVG.java
 Fri Sep 17 08:52:38 2010
@@ -38,6 +38,7 @@ import org.apache.xmlgraphics.image.load
 
 import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.image.loader.batik.BatikImageFlavors;
+import org.apache.fop.image.loader.batik.BatikUtil;
 import org.apache.fop.render.ImageHandler;
 import org.apache.fop.render.RenderingContext;
 import org.apache.fop.render.pdf.PDFLogicalStructureHandler.MarkedContentInfo;
@@ -46,6 +47,7 @@ import org.apache.fop.svg.PDFBridgeConte
 import org.apache.fop.svg.PDFGraphics2D;
 import org.apache.fop.svg.SVGEventProducer;
 import org.apache.fop.svg.SVGUserAgent;
+import org.w3c.dom.Document;
 
 /**
  * Image Handler implementation which handles SVG images.
@@ -82,10 +84,14 @@ public class PDFImageHandlerSVG implemen
                 userAgent.getFactory().getImageManager(),
                 userAgent.getImageSessionContext(),
                 new AffineTransform());
+        
+        //Cloning SVG DOM as Batik attaches non-thread-safe facilities (like 
the CSS engine)
+        //to it.
+        Document clonedDoc = 
BatikUtil.cloneSVGDocument(imageSVG.getDocument());
 
         GraphicsNode root;
         try {
-            root = builder.build(ctx, imageSVG.getDocument());
+            root = builder.build(ctx, clonedDoc);
             builder = null;
         } catch (Exception e) {
             SVGEventProducer eventProducer = SVGEventProducer.Provider.get(

Modified: 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/ps/PSImageHandlerSVG.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/ps/PSImageHandlerSVG.java?rev=998021&r1=998020&r2=998021&view=diff
==============================================================================
--- 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/ps/PSImageHandlerSVG.java
 (original)
+++ 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/render/ps/PSImageHandlerSVG.java
 Fri Sep 17 08:52:38 2010
@@ -23,6 +23,8 @@ import java.awt.Rectangle;
 import java.awt.geom.AffineTransform;
 import java.io.IOException;
 
+import org.w3c.dom.Document;
+
 import org.apache.batik.bridge.BridgeContext;
 import org.apache.batik.bridge.GVTBuilder;
 import org.apache.batik.gvt.GraphicsNode;
@@ -34,6 +36,7 @@ import org.apache.xmlgraphics.java2d.ps.
 import org.apache.xmlgraphics.ps.PSGenerator;
 
 import org.apache.fop.image.loader.batik.BatikImageFlavors;
+import org.apache.fop.image.loader.batik.BatikUtil;
 import org.apache.fop.render.ImageHandler;
 import org.apache.fop.render.RenderingContext;
 import org.apache.fop.svg.SVGEventProducer;
@@ -70,10 +73,14 @@ public class PSImageHandlerSVG implement
                 context.getUserAgent().getFactory().getImageManager(),
                 context.getUserAgent().getImageSessionContext());
 
+        //Cloning SVG DOM as Batik attaches non-thread-safe facilities (like 
the CSS engine)
+        //to it.
+        Document clonedDoc = 
BatikUtil.cloneSVGDocument(imageSVG.getDocument());
+
         GraphicsNode root;
         try {
             GVTBuilder builder = new GVTBuilder();
-            root = builder.build(ctx, imageSVG.getDocument());
+            root = builder.build(ctx, clonedDoc);
         } catch (Exception e) {
             SVGEventProducer eventProducer = SVGEventProducer.Provider.get(
                     context.getUserAgent().getEventBroadcaster());

Propchange: 
xmlgraphics/fop/branches/Temp_ComplexScripts/src/java/org/apache/fop/util/ColorExt.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 17 08:52:38 2010
@@ -2,4 +2,4 @@
 
/xmlgraphics/fop/branches/Temp_Accessibility/src/java/org/apache/fop/util/ColorExt.java:745924-830281
 
/xmlgraphics/fop/branches/Temp_AreaTreeNewDesign/src/java/org/apache/fop/util/ColorExt.java:603620-746655
 
/xmlgraphics/fop/branches/fop-0_95/src/java/org/apache/fop/util/ColorExt.java:684572,688085,688696
-/xmlgraphics/fop/trunk/src/java/org/apache/fop/util/ColorExt.java:981451-995168
+/xmlgraphics/fop/trunk/src/java/org/apache/fop/util/ColorExt.java:981451-998017

Modified: xmlgraphics/fop/branches/Temp_ComplexScripts/status.xml
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_ComplexScripts/status.xml?rev=998021&r1=998020&r2=998021&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_ComplexScripts/status.xml (original)
+++ xmlgraphics/fop/branches/Temp_ComplexScripts/status.xml Fri Sep 17 08:52:38 
2010
@@ -58,6 +58,9 @@
       documents. Example: the fix of marks layering will be such a case when 
it's done.
     -->
     <release version="FOP Trunk" date="TBD">
+      <action context="Renderers" dev="JM" type="fix" fixes-bug="46360" 
due-to="Alexis Giotis">
+        Fixed a multi-threading issue when rendering SVG.
+      </action>
       <action context="Layout" dev="JM" type="fix" fixes-bug="49885">
         Fixed retrieval of available BPD for cases spanning columns and 
multiple pages with differing page masters.
       </action>



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to