@@ -297,12 +297,11 @@ def _get_handle(path_or_buf, mode, encoding=None, compression=None,
297
297
-------
298
298
f : file-like
299
299
A file-like object
300
- new_handle : file-like or None
301
- A file-like object that was openned in this function. Or None if none
302
- were openned.
300
+ handles : list of file-like objects
301
+ A list of file-like object that were openned in this function.
303
302
"""
304
303
305
- new_handle = None
304
+ handles = list ()
306
305
f = path_or_buf
307
306
is_path = isinstance (path_or_buf , compat .string_types )
308
307
@@ -358,13 +357,15 @@ def _get_handle(path_or_buf, mode, encoding=None, compression=None,
358
357
msg = 'Unrecognized compression type: {}' .format (compression )
359
358
raise ValueError (msg )
360
359
360
+ handles .append (f )
361
+
361
362
# In Python 3
362
363
if compat .PY3 :
363
364
from io import TextIOWrapper
364
365
f = TextIOWrapper (f , encoding = encoding )
366
+ handles .append (f )
365
367
366
- new_handle = f
367
- return f , new_handle
368
+ return f , handles
368
369
369
370
elif is_path :
370
371
if compat .PY2 :
@@ -376,13 +377,13 @@ def _get_handle(path_or_buf, mode, encoding=None, compression=None,
376
377
else :
377
378
# Python 3 and no explicit encoding
378
379
f = open (path_or_buf , mode , errors = 'replace' )
379
- new_handle = f
380
+ handles . append ( f )
380
381
381
382
# in Python 3, convert BytesIO or fileobjects passed with an encoding
382
383
if compat .PY3 and isinstance (path_or_buf , compat .BytesIO ):
383
384
from io import TextIOWrapper
384
385
f = TextIOWrapper (f , encoding = encoding )
385
- new_handle = f
386
+ handles . append ( f )
386
387
387
388
if memory_map and hasattr (f , 'fileno' ):
388
389
try :
@@ -396,7 +397,7 @@ def _get_handle(path_or_buf, mode, encoding=None, compression=None,
396
397
# leave the file handler as is then
397
398
pass
398
399
399
- return f , new_handle
400
+ return f , handles
400
401
401
402
402
403
class MMapWrapper (BaseIterator ):
0 commit comments