]> granicus.if.org Git - python/commitdiff
Jython compatibility fix: if uu.decode() opened its output file, be sure to
authorAndrew M. Kuchling <amk@amk.ca>
Mon, 20 Nov 2006 13:39:37 +0000 (13:39 +0000)
committerAndrew M. Kuchling <amk@amk.ca>
Mon, 20 Nov 2006 13:39:37 +0000 (13:39 +0000)
close it.

Lib/uu.py

index 3ccedb0b1df7a145417aca3e223de997c7a8498e..da89f7298d44f277e34a45e069d61d74b030b3de 100755 (executable)
--- a/Lib/uu.py
+++ b/Lib/uu.py
@@ -114,6 +114,7 @@ def decode(in_file, out_file=None, mode=None, quiet=0):
     #
     # Open the output file
     #
+    opened = False
     if out_file == '-':
         out_file = sys.stdout
     elif isinstance(out_file, basestring):
@@ -123,6 +124,7 @@ def decode(in_file, out_file=None, mode=None, quiet=0):
         except AttributeError:
             pass
         out_file = fp
+        opened = True
     #
     # Main decoding loop
     #
@@ -140,6 +142,8 @@ def decode(in_file, out_file=None, mode=None, quiet=0):
         s = in_file.readline()
     if not s:
         raise Error('Truncated input file')
+    if opened:
+        out_file.close()
 
 def test():
     """uuencode/uudecode main program"""