merge commit.
diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py
index e4c204d..6815f94 100644
--- a/Lib/ctypes/util.py
+++ b/Lib/ctypes/util.py
@@ -137,9 +137,7 @@
rv = f.close()
if rv == 10:
raise OSError('objdump command not found')
- with contextlib.closing(os.popen(cmd)) as f:
- data = f.read()
- res = re.search(r'\sSONAME\s+([^\s]+)', data)
+ res = re.search(r'\sSONAME\s+([^\s]+)', dump)
if not res:
return None
return res.group(1)
diff --git a/Misc/NEWS b/Misc/NEWS
index 9ecd4a7..4009e74 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -163,6 +163,9 @@
- Issue #11109 - New service_action method for BaseServer, used by
ForkingMixin class for cleanup. Initial Patch by Justin Wark.
+
+- Issue #12045: Avoid duplicate execution of command in ctypes.util._get_soname().
+ Patch by Sijin Joseph.
- Issue #10818: Remove the Tk GUI and the serve() function of the pydoc module,
pydoc -g has been deprecated in Python 3.2 and it has a new enhanced web