Skip to content

Commit cb8a172

Browse files
committed
Add close() and context management to ubi_file
1 parent f84a4e3 commit cb8a172

7 files changed

Lines changed: 23 additions & 0 deletions

ubireader/scripts/ubireader_display_blocks.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,8 @@ def main():
184184
if match:
185185
blocks.append(ubi_obj.blocks[block])
186186

187+
ufile_obj.close()
188+
187189
print('\nBlock matches: %s' % len(blocks))
188190

189191
for block in blocks:

ubireader/scripts/ubireader_display_info.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,5 +185,8 @@ def main():
185185
else:
186186
print('Something went wrong to get here.')
187187

188+
ufile_obj.close()
189+
190+
188191
if __name__=='__main__':
189192
main()

ubireader/scripts/ubireader_extract_files.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,8 @@ def main():
198198
else:
199199
print('Something went wrong to get here.')
200200

201+
ufile_obj.close()
202+
201203

202204
if __name__=='__main__':
203205
main()

ubireader/scripts/ubireader_extract_images.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,5 +167,8 @@ def main():
167167
for block in image.volumes[volume].reader(ubi_obj):
168168
f.write(block)
169169

170+
ufile_obj.close()
171+
172+
170173
if __name__=='__main__':
171174
main()

ubireader/scripts/ubireader_list_files.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,5 +173,8 @@ def main():
173173
else:
174174
print('Something went wrong to get here.')
175175

176+
ufile_obj.close()
177+
178+
176179
if __name__=='__main__':
177180
main()

ubireader/scripts/ubireader_utils_info.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -343,5 +343,8 @@ def main():
343343
# Create build scripts.
344344
make_files(ubi_obj, outpath)
345345

346+
ufile_obj.close()
347+
348+
346349
if __name__=='__main__':
347350
main()

ubireader/ubi_io.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,11 @@ def __init__(self, path, block_size, start_offset=0, end_offset=None):
8888
self._last_read_addr = self._fhandle.tell()
8989
self.is_valid = True
9090

91+
def __enter__(self):
92+
return self
93+
94+
def __exit__(self, exc_type, exc_value, traceback):
95+
self.close()
9196

9297
def _set_start(self, i):
9398
self._start_offset = i
@@ -105,6 +110,8 @@ def _get_block_size(self):
105110
return self._block_size
106111
block_size = property(_get_block_size)
107112

113+
def close(self):
114+
self._fhandle.close()
108115

109116
def seek(self, offset):
110117
self._fhandle.seek(offset)

0 commit comments

Comments
 (0)