[libvirt] [PATCH 11/22] WmiClass: Don't share "versions" between instances

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Lists in Python are mutable and when used as a default value of a
parameter for class constructor, its value will be shared between
all class instances.

Example:

	class Test:
	    def __init__(self, mylist=[]):
	        self.mylist = mylist

	A = Test()
	B = Test()
	A.mylist.append("mylist from instance A")
	print(B.mylist) # Will print ['mylist from instance A']

Signed-off-by: Radostin Stoyanov <rstoyanov1@xxxxxxxxx>
---
 src/hyperv/hyperv_wmi_generator.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/hyperv/hyperv_wmi_generator.py b/src/hyperv/hyperv_wmi_generator.py
index f98a77562..acb9e5440 100755
--- a/src/hyperv/hyperv_wmi_generator.py
+++ b/src/hyperv/hyperv_wmi_generator.py
@@ -44,9 +44,9 @@ class WmiClass:
     to.
     """
 
-    def __init__(self, name, versions = []):
+    def __init__(self, name, versions=None):
         self.name = name
-        self.versions = versions
+        self.versions = versions if versions else list()
         self.common = None
 
 
-- 
2.14.3

_______________________________________________
virt-tools-list mailing list
virt-tools-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/virt-tools-list



[Index of Archives]     [Linux Virtualization]     [KVM Development]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]     [Video 4 Linux]

  Powered by Linux