@@ -2889,13 +2889,13 @@ def __init__(self, filename=None, stream=None, filetype=None, rect=None, width=0
2889
2889
filename = filename.name
2890
2890
else:
2891
2891
raise TypeError(f"bad filename: {type(filename)=} {filename=}.")
2892
-
2892
+
2893
2893
if stream is not None:
2894
- if type (stream) in (bytes, memoryview):
2894
+ if isinstance (stream, (bytes, memoryview) ):
2895
2895
self.stream = stream
2896
- elif type (stream) is bytearray:
2896
+ elif isinstance (stream, bytearray) :
2897
2897
self.stream = bytes(stream)
2898
- elif type (stream) is io.BytesIO:
2898
+ elif isinstance (stream, io.BytesIO) :
2899
2899
self.stream = stream.getvalue()
2900
2900
else:
2901
2901
raise TypeError(f"bad stream: {type(stream)=}.")
@@ -2919,11 +2919,9 @@ def __init__(self, filename=None, stream=None, filetype=None, rect=None, width=0
2919
2919
elif not os.path.isfile(filename):
2920
2920
msg = f"'{filename}' is no file"
2921
2921
raise FileDataError(msg)
2922
-
2923
- if from_file and os.path.getsize(filename) == 0:
2924
- raise EmptyFileError(f'Cannot open empty file: {filename=}.')
2925
- if type(stream) in (bytes, memoryview) and len(self.stream) == 0:
2926
- raise EmptyFileError(f'Cannot open empty stream.')
2922
+ elif os.path.getsize(filename) == 0:
2923
+ raise EmptyFileError(f'Cannot open empty file: {filename=}.')
2924
+
2927
2925
w = width
2928
2926
h = height
2929
2927
r = JM_rect_from_py(rect)
@@ -2933,12 +2931,14 @@ def __init__(self, filename=None, stream=None, filetype=None, rect=None, width=0
2933
2931
2934
2932
if stream: # stream given, **MUST** be bytes!
2935
2933
assert isinstance(stream, (bytes, memoryview))
2934
+ if len(self.stream) == 0:
2935
+ raise EmptyFileError('Cannot open empty stream.')
2936
2936
c = stream
2937
2937
#len = (size_t) PyBytes_Size(stream);
2938
2938
2939
2939
if mupdf_cppyy:
2940
- buffer_ = mupdf.fz_new_buffer_from_copied_data( c)
2941
- data = mupdf.fz_open_buffer( buffer_)
2940
+ buffer_ = mupdf.fz_new_buffer_from_copied_data(c)
2941
+ data = mupdf.fz_open_buffer(buffer_)
2942
2942
else:
2943
2943
# Pass raw bytes data to mupdf.fz_open_memory(). This assumes
2944
2944
# that the bytes string will not be modified; i think the
0 commit comments