Updated Branches:
  refs/heads/ode-1.3.6.x 98f2c006c -> e2185e89f

fixing ODE-960, thanks Denis for the patch!


Project: http://git-wip-us.apache.org/repos/asf/ode/repo
Commit: http://git-wip-us.apache.org/repos/asf/ode/commit/e2185e89
Tree: http://git-wip-us.apache.org/repos/asf/ode/tree/e2185e89
Diff: http://git-wip-us.apache.org/repos/asf/ode/diff/e2185e89

Branch: refs/heads/ode-1.3.6.x
Commit: e2185e89f0b1121fb52153812d1921445bf382a4
Parents: 98f2c00
Author: Tammo van Lessen <[email protected]>
Authored: Sat Sep 14 14:06:19 2013 +0200
Committer: Tammo van Lessen <[email protected]>
Committed: Sat Sep 14 14:06:19 2013 +0200

----------------------------------------------------------------------
 .../java/org/apache/ode/bpel/runtime/ASSIGN.java    | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ode/blob/e2185e89/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java
----------------------------------------------------------------------
diff --git a/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java 
b/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java
index d2a69e5..378003a 100644
--- a/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java
+++ b/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java
@@ -518,17 +518,23 @@ class ASSIGN extends ACTIVITY {
         NodeList nl = src.getChildNodes();
         for (int i = 0; i < nl.getLength(); ++i)
             replacement.appendChild(doc.importNode(nl.item(i), true));
-        NamedNodeMap attrs = src.getAttributes();
-        for (int i = 0; i < attrs.getLength(); ++i) {
-            Attr attr = (Attr)attrs.item(i);
-            replacement.setAttributeNodeNS((Attr)doc.importNode(attr, true));
-        }
+        copyAttributes(doc, ptr, replacement);
+        copyAttributes(doc, src, replacement);
         parent.replaceChild(replacement, ptr);
         DOMUtils.copyNSContext(ptr, replacement);
         
         return (lval == ptr) ? replacement :  lval;
     }
 
+    private void copyAttributes(Document doc, Element original,
+            Element replacement) {
+        NamedNodeMap attrs = original.getAttributes();
+        for (int i = 0; i < attrs.getLength(); ++i) {
+            Attr attr = (Attr)attrs.item(i);
+            replacement.setAttributeNodeNS((Attr)doc.importNode(attr, true));
+        }
+    }
+
     private Element copyInto(Element lval, Element ptr, Element src) {
         ptr.appendChild(ptr.getOwnerDocument().importNode(src, true));
         return lval;

Reply via email to