Commits

Georg Brandl committed 98b5b1f

Closes #810: fix remaining PendingDeprecationWarnings with Python 3.

Comments (0)

Files changed (1)

sphinx/directives/code.py

 
         encoding = self.options.get('encoding', env.config.source_encoding)
         codec_info = codecs.lookup(encoding)
+        f = None
         try:
             f = codecs.StreamReaderWriter(open(filename, 'rb'),
                     codec_info[2], codec_info[3], 'strict')
             lines = f.readlines()
-            f.close()
         except (IOError, OSError):
             return [document.reporter.warning(
                 'Include file %r not found or reading it failed' % filename,
                 'Encoding %r used for reading included file %r seems to '
                 'be wrong, try giving an :encoding: option' %
                 (encoding, filename))]
+        finally:
+            if f is not None:
+                f.close()
 
         objectname = self.options.get('pyobject')
         if objectname is not None: