summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Client
diff options
context:
space:
mode:
authorTim Laszlo <tim.laszlo@gmail.com>2013-07-10 10:09:24 -0500
committerTim Laszlo <tim.laszlo@gmail.com>2013-07-10 10:09:51 -0500
commit4c3706627593e3d88604320d5c74c57ca4da1012 (patch)
treec1273f8c895f77f5bfa02537ece262c37c9e14a0 /src/lib/Bcfg2/Client
parent1cbc56d5e72e85cdf52e5c8deb95eac1094361e8 (diff)
downloadbcfg2-4c3706627593e3d88604320d5c74c57ca4da1012.tar.gz
bcfg2-4c3706627593e3d88604320d5c74c57ca4da1012.tar.bz2
bcfg2-4c3706627593e3d88604320d5c74c57ca4da1012.zip
Copy xml elements before appending to tree. This prevents modified entries from being added
(cherry picked from commit 6b0b45842b138a928f7d5e395f7a21f9ad932f2a)
Diffstat (limited to 'src/lib/Bcfg2/Client')
-rw-r--r--src/lib/Bcfg2/Client/Frame.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/Bcfg2/Client/Frame.py b/src/lib/Bcfg2/Client/Frame.py
index 5a9581e9a..4fece79b8 100644
--- a/src/lib/Bcfg2/Client/Frame.py
+++ b/src/lib/Bcfg2/Client/Frame.py
@@ -1,6 +1,7 @@
""" Frame is the Client Framework that verifies and installs entries,
and generates statistics. """
+import copy
import time
import fnmatch
import logging
@@ -549,7 +550,7 @@ class Frame(object):
container = Bcfg2.Client.XML.SubElement(stats, ename)
for item in data:
item.set('qtext', '')
- container.append(item)
+ container.append(copy.deepcopy(item))
item.text = None
timeinfo = Bcfg2.Client.XML.Element("OpStamps")