You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ja...@apache.org on 2015/02/05 05:53:09 UTC

svn commit: r1657477 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDGraphicsState.java

Author: jahewson
Date: Thu Feb  5 04:53:08 2015
New Revision: 1657477

URL: http://svn.apache.org/r1657477
Log:
PDFBOX-2668: Perform a deep copy when intersecting clipping paths

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDGraphicsState.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDGraphicsState.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDGraphicsState.java?rev=1657477&r1=1657476&r2=1657477&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDGraphicsState.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDGraphicsState.java Thu Feb  5 04:53:08 2015
@@ -562,7 +562,10 @@ public class PDGraphicsState implements
         // lazy cloning of clipping path for performance
         if (!isClippingPathDirty)
         {
-            clippingPath = (Area) clippingPath.clone();
+            // deep copy (can't use clone() as it performs only a shallow copy)
+            Area cloned = new Area();
+            cloned.add(clippingPath);
+            
             isClippingPathDirty = true;
         }