Commit 217d6114fd903fa670b8c67bcf7983b653fe518f
1 parent
de9f5e91
record_base: ensure streams are closed in iter_streams
Showing
1 changed file
with
6 additions
and
4 deletions
oletools/record_base.py
| ... | ... | @@ -145,10 +145,12 @@ class OleRecordFile(olefile.OleFileIO): |
| 145 | 145 | clz = OleSummaryInformationStream |
| 146 | 146 | else: |
| 147 | 147 | clz = self.stream_class_for_name(direntry.name) |
| 148 | - yield clz(self._open(direntry.isectStart, direntry.size), | |
| 149 | - direntry.size, | |
| 150 | - None if is_orphan else direntry.name, | |
| 151 | - direntry.entry_type) | |
| 148 | + stream = clz(self._open(direntry.isectStart, direntry.size), | |
| 149 | + direntry.size, | |
| 150 | + None if is_orphan else direntry.name, | |
| 151 | + direntry.entry_type) | |
| 152 | + yield stream | |
| 153 | + stream.close() | |
| 152 | 154 | |
| 153 | 155 | |
| 154 | 156 | class OleRecordStream(object): | ... | ... |