From 8b18917435d8e32b51b3612dbee32c5cce6549e0 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 1 Mar 2009 15:27:40 -0800 Subject: [PATCH] Fix calibre holding file handles on the Cybook, preventing it from being ejected --- src/calibre/ebooks/metadata/meta.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/calibre/ebooks/metadata/meta.py b/src/calibre/ebooks/metadata/meta.py index 1241238f26..43053a43b9 100644 --- a/src/calibre/ebooks/metadata/meta.py +++ b/src/calibre/ebooks/metadata/meta.py @@ -39,13 +39,13 @@ def metadata_from_formats(formats): return mi2 for path, ext in zip(formats, extensions): - stream = open(path, 'rb') - try: - mi.smart_update(get_metadata(stream, stream_type=ext, use_libprs_metadata=True)) - except: - continue - if getattr(mi, 'application_id', None) is not None: - return mi + with open(path, 'rb') as stream: + try: + mi.smart_update(get_metadata(stream, stream_type=ext, use_libprs_metadata=True)) + except: + continue + if getattr(mi, 'application_id', None) is not None: + return mi if not mi.title: mi.title = _('Unknown')