diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-09-21 20:14:03 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-09-22 15:52:12 -0700 |
commit | c942230eee405d35b99d85a3e9d8b00ce11d2222 (patch) | |
tree | 1746accff0c638dfd28899f3a468d5829bb69a34 | |
parent | 7be6abc98d6e78814ac1a94ebb162073671659b8 (diff) | |
download | poky-c942230eee405d35b99d85a3e9d8b00ce11d2222.tar.gz |
bitbake: daemonize/build: Clean up /dev/null fd handling
At the end of bitbake selftest we see:
sys:1: ResourceWarning: unclosed file <_io.TextIOWrapper name='/dev/null' mode='r+' encoding='UTF-8'>
Clean up the /dev/null handling to drop the unused entry in build.by and
ensure the other open() calls are cleaned up.
NULL was unused since http://git.yoctoproject.org/cgit.cgi/poky/commit/bitbake/lib/bb/build.py?id=4a081b5a52e3d27da8d4b062f3fda292e8d8fb0a
back in 2012.
(Bitbake rev: e72be96cfa9f05fda5f420c7cfa8bcfa9304b884)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | bitbake/lib/bb/build.py | 7 | ||||
-rw-r--r-- | bitbake/lib/bb/daemonize.py | 4 |
2 files changed, 4 insertions, 7 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index c79354b3f1..3e2a94edb1 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py | |||
@@ -41,8 +41,6 @@ from bb import data, event, utils | |||
41 | bblogger = logging.getLogger('BitBake') | 41 | bblogger = logging.getLogger('BitBake') |
42 | logger = logging.getLogger('BitBake.Build') | 42 | logger = logging.getLogger('BitBake.Build') |
43 | 43 | ||
44 | NULL = open(os.devnull, 'r+') | ||
45 | |||
46 | __mtime_cache = {} | 44 | __mtime_cache = {} |
47 | 45 | ||
48 | def cached_mtime_noerror(f): | 46 | def cached_mtime_noerror(f): |
@@ -533,7 +531,6 @@ def _exec_task(fn, task, d, quieterr): | |||
533 | self.triggered = True | 531 | self.triggered = True |
534 | 532 | ||
535 | # Handle logfiles | 533 | # Handle logfiles |
536 | si = open('/dev/null', 'r') | ||
537 | try: | 534 | try: |
538 | bb.utils.mkdirhier(os.path.dirname(logfn)) | 535 | bb.utils.mkdirhier(os.path.dirname(logfn)) |
539 | logfile = open(logfn, 'w') | 536 | logfile = open(logfn, 'w') |
@@ -547,7 +544,8 @@ def _exec_task(fn, task, d, quieterr): | |||
547 | ose = [os.dup(sys.stderr.fileno()), sys.stderr.fileno()] | 544 | ose = [os.dup(sys.stderr.fileno()), sys.stderr.fileno()] |
548 | 545 | ||
549 | # Replace those fds with our own | 546 | # Replace those fds with our own |
550 | os.dup2(si.fileno(), osi[1]) | 547 | with open('/dev/null', 'r') as si: |
548 | os.dup2(si.fileno(), osi[1]) | ||
551 | os.dup2(logfile.fileno(), oso[1]) | 549 | os.dup2(logfile.fileno(), oso[1]) |
552 | os.dup2(logfile.fileno(), ose[1]) | 550 | os.dup2(logfile.fileno(), ose[1]) |
553 | 551 | ||
@@ -608,7 +606,6 @@ def _exec_task(fn, task, d, quieterr): | |||
608 | os.close(osi[0]) | 606 | os.close(osi[0]) |
609 | os.close(oso[0]) | 607 | os.close(oso[0]) |
610 | os.close(ose[0]) | 608 | os.close(ose[0]) |
611 | si.close() | ||
612 | 609 | ||
613 | logfile.close() | 610 | logfile.close() |
614 | if os.path.exists(logfn) and os.path.getsize(logfn) == 0: | 611 | if os.path.exists(logfn) and os.path.getsize(logfn) == 0: |
diff --git a/bitbake/lib/bb/daemonize.py b/bitbake/lib/bb/daemonize.py index 613fb35536..c937675eb6 100644 --- a/bitbake/lib/bb/daemonize.py +++ b/bitbake/lib/bb/daemonize.py | |||
@@ -65,8 +65,8 @@ def createDaemon(function, logfile): | |||
65 | # The second child. | 65 | # The second child. |
66 | 66 | ||
67 | # Replace standard fds with our own | 67 | # Replace standard fds with our own |
68 | si = open('/dev/null', 'r') | 68 | with open('/dev/null', 'r') as si: |
69 | os.dup2(si.fileno(), sys.stdin.fileno()) | 69 | os.dup2(si.fileno(), sys.stdin.fileno()) |
70 | 70 | ||
71 | try: | 71 | try: |
72 | so = open(logfile, 'a+') | 72 | so = open(logfile, 'a+') |