[PATCH 1/3] When handling hidden devices in getDeviceBy*, don't use +=.

Chris Lumens clumens at redhat.com
Tue May 21 18:54:27 UTC 2013


This has the effect of making self._devices also contain all of self._hidden,
which will break lots of other things.
---
 blivet/devicetree.py | 30 ++++++++++++++++++------------
 1 file changed, 18 insertions(+), 12 deletions(-)

diff --git a/blivet/devicetree.py b/blivet/devicetree.py
index 691f1b2..d32f09e 100644
--- a/blivet/devicetree.py
+++ b/blivet/devicetree.py
@@ -1914,9 +1914,10 @@ class DeviceTree(object):
             return None
 
         found = None
-        devices = self._devices
         if hidden:
-            devices += self._hidden
+            devices = self._devices + self._hidden
+        else:
+            devices += self._devices
 
         for device in devices:
             if not incomplete and not getattr(device, "complete", True):
@@ -1934,9 +1935,10 @@ class DeviceTree(object):
             return None
 
         found = None
-        devices = self._devices
         if hidden:
-            devices += self._hidden
+            devices = self._devices + self._hidden
+        else:
+            devices = self._devices
 
         for device in devices:
             if not incomplete and not getattr(device, "complete", True):
@@ -1953,9 +1955,10 @@ class DeviceTree(object):
         return found
 
     def getDevicesBySerial(self, serial, incomplete=False, hidden=False):
-        devices = self._devices
         if hidden:
-            devices += self._hidden
+            devices = self._devices + self._hidden
+        else:
+            devices = self._devices
 
         retval = []
         for device in devices:
@@ -1976,9 +1979,10 @@ class DeviceTree(object):
             return None
 
         found = None
-        devices = self._devices
         if hidden:
-            devices += self._hidden
+            devices = self._devices + self._hidden
+        else:
+            devices = self._devices
 
         for device in devices:
             if not incomplete and not getattr(device, "complete", True):
@@ -2002,9 +2006,10 @@ class DeviceTree(object):
             return None
 
         found = None
-        devices = self._devices
         if hidden:
-            devices += self._hidden
+            devices = self._devices + self._hidden
+        else:
+            devices = self._devices
 
         for device in devices:
             if not incomplete and not getattr(device, "complete", True):
@@ -2031,9 +2036,10 @@ class DeviceTree(object):
         leaf = None
         other = None
 
-        devices = self._devices
         if hidden:
-            devices += self._hidden
+            devices = self._devices + self._hidden
+        else:
+            devices = self._devices
 
         for device in devices:
             if not incomplete and not getattr(device, "complete", True):
-- 
1.8.1.2



More information about the anaconda-patches mailing list