From dc8b6a89e6942bfbb0e7735c46ff4370442816b1 Mon Sep 17 00:00:00 2001 From: Matthias Geier Date: Sat, 16 May 2015 16:37:49 +0200 Subject: [PATCH] Don't use len() in the virtual IO setup See #135. --- soundfile.py | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/soundfile.py b/soundfile.py index f5e37fa..06f861f 100644 --- a/soundfile.py +++ b/soundfile.py @@ -1019,14 +1019,10 @@ def _init_virtual_io(self, file): """Initialize callback functions for sf_open_virtual().""" @_ffi.callback("sf_vio_get_filelen") def vio_get_filelen(user_data): - # first try __len__(), if not available fall back to seek()/tell() - try: - size = len(file) - except TypeError: - curr = file.tell() - file.seek(0, SEEK_END) - size = file.tell() - file.seek(curr, SEEK_SET) + curr = file.tell() + file.seek(0, SEEK_END) + size = file.tell() + file.seek(curr, SEEK_SET) return size @_ffi.callback("sf_vio_seek")