diff --git a/telethon/client/uploads.py b/telethon/client/uploads.py index bcc87b5d..c9aee40f 100644 --- a/telethon/client/uploads.py +++ b/telethon/client/uploads.py @@ -90,6 +90,7 @@ def _resize_photo_if_needed( buffer = io.BytesIO() result.save(buffer, 'JPEG', progressive=True, **kwargs) buffer.seek(0) + buffer.name = getattr(file, 'name', None) return buffer except IOError: return file diff --git a/telethon/helpers.py b/telethon/helpers.py index 81f9a607..4fb9d58b 100644 --- a/telethon/helpers.py +++ b/telethon/helpers.py @@ -348,21 +348,22 @@ class _FileStream(io.IOBase): self._size = os.path.getsize(self._file) self._stream = open(self._file, 'rb') self._close_stream = True + return self - elif isinstance(self._file, bytes): + if isinstance(self._file, bytes): self._size = len(self._file) self._stream = io.BytesIO(self._file) self._close_stream = True + return self - elif not callable(getattr(self._file, 'read', None)): + if not callable(getattr(self._file, 'read', None)): raise TypeError('file description should have a `read` method') - elif self._size is not None: - self._name = getattr(self._file, 'name', None) - self._stream = self._file - self._close_stream = False + self._name = getattr(self._file, 'name', None) + self._stream = self._file + self._close_stream = False - else: + if self._size is None: if callable(getattr(self._file, 'seekable', None)): seekable = await _maybe_await(self._file.seekable()) else: @@ -373,8 +374,6 @@ class _FileStream(io.IOBase): await _maybe_await(self._file.seek(0, os.SEEK_END)) self._size = await _maybe_await(self._file.tell()) await _maybe_await(self._file.seek(pos, os.SEEK_SET)) - self._stream = self._file - self._close_stream = False else: _log.warning( 'Could not determine file size beforehand so the entire ' diff --git a/telethon/version.py b/telethon/version.py index 82cc411e..c6e38c29 100644 --- a/telethon/version.py +++ b/telethon/version.py @@ -1,3 +1,3 @@ # Versions should comply with PEP440. # This line is parsed in setup.py: -__version__ = '1.31.0' +__version__ = '1.31.1'