diff options
| author | Peter Kjellerstedt <peter.kjellerstedt@axis.com> | 2016-06-10 17:46:10 +0200 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-06-12 23:47:19 +0100 |
| commit | 93698ac54a0e4a94210b21df32e27a5252bf1056 (patch) | |
| tree | 8c894b642ed6640a92606e364cabd0615d7d3e31 | |
| parent | a9120996e032fbc6472dadbe39a3616b8826d9e5 (diff) | |
| download | poky-93698ac54a0e4a94210b21df32e27a5252bf1056.tar.gz | |
useradd-staticids.bbclass: Make sure opened files are closed
This avoids warnings about unclosed files with Python 3.
(From OE-Core rev: 77adf8341694b76cf58b7a31dda18b85b3eb87a2)
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/classes/useradd-staticids.bbclass | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/meta/classes/useradd-staticids.bbclass b/meta/classes/useradd-staticids.bbclass index a9b506d05d..440c0e3846 100644 --- a/meta/classes/useradd-staticids.bbclass +++ b/meta/classes/useradd-staticids.bbclass | |||
| @@ -4,6 +4,7 @@ def update_useradd_static_config(d): | |||
| 4 | import argparse | 4 | import argparse |
| 5 | import itertools | 5 | import itertools |
| 6 | import re | 6 | import re |
| 7 | import errno | ||
| 7 | 8 | ||
| 8 | class myArgumentParser( argparse.ArgumentParser ): | 9 | class myArgumentParser( argparse.ArgumentParser ): |
| 9 | def _print_message(self, message, file=None): | 10 | def _print_message(self, message, file=None): |
| @@ -30,19 +31,22 @@ def update_useradd_static_config(d): | |||
| 30 | are set).""" | 31 | are set).""" |
| 31 | id_table = dict() | 32 | id_table = dict() |
| 32 | for conf in file_list.split(): | 33 | for conf in file_list.split(): |
| 33 | if os.path.exists(conf): | 34 | try: |
| 34 | f = open(conf, "r") | 35 | with open(conf, "r") as f: |
| 35 | for line in f: | 36 | for line in f: |
| 36 | if line.startswith('#'): | 37 | if line.startswith('#'): |
| 37 | continue | 38 | continue |
| 38 | # Make sure there always are at least exp_fields elements in | 39 | # Make sure there always are at least exp_fields |
| 39 | # the field list. This allows for leaving out trailing | 40 | # elements in the field list. This allows for leaving |
| 40 | # colons in the files. | 41 | # out trailing colons in the files. |
| 41 | fields = list_extend(line.rstrip().split(":"), exp_fields) | 42 | fields = list_extend(line.rstrip().split(":"), exp_fields) |
| 42 | if fields[0] not in id_table: | 43 | if fields[0] not in id_table: |
| 43 | id_table[fields[0]] = fields | 44 | id_table[fields[0]] = fields |
| 44 | else: | 45 | else: |
| 45 | id_table[fields[0]] = list(itertools.imap(lambda x, y: x or y, fields, id_table[fields[0]])) | 46 | id_table[fields[0]] = list(itertools.imap(lambda x, y: x or y, fields, id_table[fields[0]])) |
| 47 | except IOError as e: | ||
| 48 | if e.errno == errno.ENOENT: | ||
| 49 | pass | ||
| 46 | 50 | ||
| 47 | return id_table | 51 | return id_table |
| 48 | 52 | ||
