From 2b7351848b415b1e735afa37743fea370df3c924 Mon Sep 17 00:00:00 2001 From: Robert Smallshire Date: Tue, 5 May 2015 13:17:07 +0200 Subject: [PATCH] Remove Python 2.7 crutch for file.seekable() --- segpy/portability.py | 23 ----------------------- segpy/reader.py | 2 +- 2 files changed, 1 insertion(+), 24 deletions(-) diff --git a/segpy/portability.py b/segpy/portability.py index 50f506b..d38467f 100644 --- a/segpy/portability.py +++ b/segpy/portability.py @@ -4,29 +4,6 @@ import sys EMPTY_BYTE_STRING = b'' if sys.version_info >= (3, 0) else '' -def seekable(fh): - """Determine whether a file-like object supports seeking. - - Args: - fh: The file-like-object to be tested. - - Returns: - True if the file supports seeking, otherwise False. - """ - try: - return fh.seekable() - except AttributeError: - try: - pos = fh.tell() - try: - fh.seek(0, os.SEEK_END) - finally: - fh.seek(pos) - except AttributeError: - return False - return True - - if sys.version_info >= (3, 0): long_int = int else: diff --git a/segpy/reader.py b/segpy/reader.py index 99774fe..3a9f727 100644 --- a/segpy/reader.py +++ b/segpy/reader.py @@ -75,7 +75,7 @@ def create_reader(fh, encoding=None, trace_header_format=TraceHeaderRev1, endian raise TypeError( "SegYReader must be provided with a binary mode file object") - if not seekable(fh): + if not fh.seekable(): raise TypeError( "SegYReader must be provided with a seekable file object")