You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-commits@xmlgraphics.apache.org by ca...@apache.org on 2005/09/10 05:53:43 UTC

svn commit: r279941 - in /xmlgraphics/batik/trunk/sources/org/apache/batik/dom: AbstractDocument.java AbstractNode.java events/EventSupport.java

Author: cam
Date: Fri Sep  9 20:53:35 2005
New Revision: 279941

URL: http://svn.apache.org/viewcvs?rev=279941&view=rev
Log:
1. Fixed problem with AbstractDocument.importNode calling UserDataHandlers
   on non-Batik DOM objects, pointed out by Arek Stryjski.

Modified:
    xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractDocument.java
    xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractNode.java
    xmlgraphics/batik/trunk/sources/org/apache/batik/dom/events/EventSupport.java

Modified: xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractDocument.java
URL: http://svn.apache.org/viewcvs/xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractDocument.java?rev=279941&r1=279940&r2=279941&view=diff
==============================================================================
--- xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractDocument.java (original)
+++ xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractDocument.java Fri Sep  9 20:53:35 2005
@@ -390,9 +390,13 @@
                                      new Object[] {});
         }
         
-        fireUserDataHandlers(UserDataHandler.NODE_IMPORTED,
-                             importedNode,
-                             result);
+        if (importedNode instanceof AbstractNode) {
+            // Only fire the UserDataHandler if the imported node is from
+            // Batik's DOM implementation.
+            fireUserDataHandlers(UserDataHandler.NODE_IMPORTED,
+                                 importedNode,
+                                 result);
+        }
 
         if (deep) {
             for (Node n = importedNode.getFirstChild();

Modified: xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractNode.java
URL: http://svn.apache.org/viewcvs/xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractNode.java?rev=279941&r1=279940&r2=279941&view=diff
==============================================================================
--- xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractNode.java (original)
+++ xmlgraphics/batik/trunk/sources/org/apache/batik/dom/AbstractNode.java Fri Sep  9 20:53:35 2005
@@ -881,7 +881,9 @@
     /**
      * Fire any UserDataHandlers on the given oldNode.
      */
-    protected void fireUserDataHandlers(int type, Node oldNode, Node newNode) {
+    protected void fireUserDataHandlers(short type,
+                                        Node oldNode,
+                                        Node newNode) {
         AbstractNode an = (AbstractNode) oldNode;
         if (an.userData != null) {
             Iterator i = an.userData.entrySet().iterator();
@@ -890,7 +892,7 @@
                 UserDataHandler h
                     = (UserDataHandler) an.userDataHandlers.get(e.getKey());
                 if (h != null) {
-                    h.handle(UserDataHandler.NODE_IMPORTED,
+                    h.handle(type,
                              (String) e.getKey(),
                              e.getValue(),
                              oldNode,

Modified: xmlgraphics/batik/trunk/sources/org/apache/batik/dom/events/EventSupport.java
URL: http://svn.apache.org/viewcvs/xmlgraphics/batik/trunk/sources/org/apache/batik/dom/events/EventSupport.java?rev=279941&r1=279940&r2=279941&view=diff
==============================================================================
--- xmlgraphics/batik/trunk/sources/org/apache/batik/dom/events/EventSupport.java (original)
+++ xmlgraphics/batik/trunk/sources/org/apache/batik/dom/events/EventSupport.java Fri Sep  9 20:53:35 2005
@@ -460,7 +460,7 @@
     }
 
     /**
-     * Wrapper class for {@org.w3c.dom.events.CustomEvent} objects.
+     * Wrapper class for {@link org.w3c.dom.events.CustomEvent} objects.
      */
     protected class WrappedEvent implements CustomEvent {