X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/de259910871b7a01ecc199722ea26e6b335ca55e..ec96bfb7ddad8d27862ace0c382f9bd33679f96c:/sdk/python/arvados/cache.py diff --git a/sdk/python/arvados/cache.py b/sdk/python/arvados/cache.py index 868b478ac5..85f2b89ea2 100644 --- a/sdk/python/arvados/cache.py +++ b/sdk/python/arvados/cache.py @@ -1,3 +1,7 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: Apache-2.0 + from builtins import object import errno import hashlib @@ -33,14 +37,14 @@ class SafeHTTPCache(object): return self._dir def _filename(self, url): - return os.path.join(self._dir, hashlib.md5(url).hexdigest()+'.tmp') + return os.path.join(self._dir, hashlib.md5(url.encode('utf-8')).hexdigest()+'.tmp') def get(self, url): filename = self._filename(url) try: with open(filename, 'rb') as f: return f.read() - except IOError as OSError: + except (IOError, OSError): return None def set(self, url, content): @@ -50,7 +54,7 @@ class SafeHTTPCache(object): return None try: try: - f = os.fdopen(fd, 'w') + f = os.fdopen(fd, 'wb') except: os.close(fd) raise