Summary:
This will allow pathlib.Path object to the torch.load as an input argument.
Fixes #16607
Pull Request resolved: https://github.com/pytorch/pytorch/pull/18562
Differential Revision:
D14668255
Pulled By: soumith
fbshipit-source-id:
0ae4f7c210918582912f2d1ef2a98f1ab288c540
"""
new_fd = False
if isinstance(f, str) or \
- (sys.version_info[0] == 2 and isinstance(f, unicode)) or \
- (sys.version_info[0] == 3 and isinstance(f, pathlib.Path)):
+ (sys.version_info[0] == 2 and isinstance(f, unicode)):
new_fd = True
f = open(f, 'rb')
+ elif (sys.version_info[0] == 3 and isinstance(f, pathlib.Path)):
+ new_fd = True
+ f = f.open('rb')
try:
return _load(f, map_location, pickle_module, **pickle_load_args)
finally: