From d3e6486c0fc5bd6eb9de9757cb50e4067658ee2b Mon Sep 17 00:00:00 2001 From: Stefan Behnel Date: Sat, 18 Jan 2014 14:58:40 +0100 Subject: safety fix --- Cython/Compiler/ModuleNode.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'Cython/Compiler/ModuleNode.py') diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py index 02bac9cbd..8a47766c5 100644 --- a/Cython/Compiler/ModuleNode.py +++ b/Cython/Compiler/ModuleNode.py @@ -346,10 +346,12 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): globalstate.finalize_main_c_code() f = open_new_file(result.c_file) - rootwriter.copyto(f) - if options.gdb_debug: - self._serialize_lineno_map(env, rootwriter) - f.close() + try: + rootwriter.copyto(f) + if options.gdb_debug: + self._serialize_lineno_map(env, rootwriter) + finally: + f.close() result.c_file_generated = 1 if Options.annotate or options.annotate: self.annotate(rootwriter) -- cgit v1.2.1