blob: 7d9121846f34ef8f4e394a7d3d9e8336aa43c666 [file] [log] [blame]
From 057872fa40e061100d61117cee5c3413ef2e40fc Mon Sep 17 00:00:00 2001
From: Mingli Yu <mingli.yu@windriver.com>
Date: Thu, 20 Jan 2022 15:18:20 +0800
Subject: [PATCH] setupinfo.py: check the return value
Use the return value altogether to check the subprocess execute
successfully or not as in some case it will print some noise
message though run successfully as below.
# python
Python 3.8.10 (default, Nov 26 2021, 20:14:08)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import subprocess
>>> cmd = "pkg-config --modversion libxml-2.0"
>>> p = subprocess.Popen(cmd, shell=True,stdout=subprocess.PIPE, stderr=subprocess.PIPE)
>>> stdout_data, errors = p.communicate()
>>> print(stdout_data)
b'2.9.12\n'
>>> print(errors)
b'do_ypcall: clnt_call: RPC: Unable to send; errno = Network is unreachable\n'
>>>
Upstream-Status: Submitted [https://github.com/lxml/lxml/pull/336]
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
setupinfo.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setupinfo.py b/setupinfo.py
index 8c2a36fb..c1247c6d 100644
--- a/setupinfo.py
+++ b/setupinfo.py
@@ -365,7 +365,7 @@ def run_command(cmd, *args):
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout_data, errors = p.communicate()
- if errors:
+ if p.returncode != 0 and errors:
return ''
return decode_input(stdout_data).strip()
--
2.17.1