Signed-off-by: Cleber Rosa <[email protected]>
---
 client/shared/software_manager.py | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/client/shared/software_manager.py 
b/client/shared/software_manager.py
index e7f796f..5798e3c 100755
--- a/client/shared/software_manager.py
+++ b/client/shared/software_manager.py
@@ -245,6 +245,11 @@ class DpkgBackend(BaseBackend):
     dpkg is a lower level package manager, used by higher level managers such
     as apt and aptitude.
     """
+
+
+    INSTALLED_OUTPUT = 'install ok installed'
+
+
     def __init__(self):
         self.lowlevel_base_cmd = os_dep.command('dpkg')
 
@@ -254,11 +259,11 @@ class DpkgBackend(BaseBackend):
             n_cmd = (self.lowlevel_base_cmd + ' -f ' + name +
                      ' Package 2>/dev/null')
             name = utils.system_output(n_cmd)
-        i_cmd = self.lowlevel_base_cmd + ' -s ' + name + ' 2>/dev/null'
+        i_cmd = (self.lowlevel_base_cmd + "--show -f='${Status}' "
+                 + name + ' 2>/dev/null')
         # Checking if package is installed
         package_status = utils.system_output(i_cmd, ignore_status=True)
-        not_inst_pattern = re.compile('not-installed', re.IGNORECASE)
-        dpkg_not_installed = re.search(not_inst_pattern, package_status)
+        dpkg_not_installed = (package_status != self.INSTALLED_OUTPUT)
         if dpkg_not_installed:
             return False
         return True
-- 
1.7.11.7

_______________________________________________
Autotest-kernel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/autotest-kernel

Reply via email to