mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-04-20 23:48:20 +00:00
python3-lxml: check the return value
Check the return value in subprocess to guarantee the subprocess execute successfully or not as after [1] introduced to limit the netowork, there some difference during do_compile phase as below. Before the change # 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'' >>> After the change # 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' >>> [1] https://git.openembedded.org/bitbake/commit/?id=0746b6a2a32fec4c18bf1a52b1454ca4c04bf543 Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
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
|
||||
|
||||
Reference in New Issue
Block a user