@@ -318,45 +318,41 @@ def _write_raw(self, data):
318318
319319 return length
320320
321- def read (self , size = - 1 ):
322- self ._check_not_closed ()
321+ def _check_read (self , caller ):
323322 if self .mode != READ :
324323 import errno
325- raise OSError (errno .EBADF , "read() on write-only GzipFile object" )
324+ msg = f"{ caller } () on write-only GzipFile object"
325+ raise OSError (errno .EBADF , msg )
326+
327+ def read (self , size = - 1 ):
328+ self ._check_not_closed ()
329+ self ._check_read ("read" )
326330 return self ._buffer .read (size )
327331
328332 def read1 (self , size = - 1 ):
329333 """Implements BufferedIOBase.read1()
330334
331335 Reads up to a buffer's worth of data if size is negative."""
332336 self ._check_not_closed ()
333- if self .mode != READ :
334- import errno
335- raise OSError (errno .EBADF , "read1() on write-only GzipFile object" )
337+ self ._check_read ("read1" )
336338
337339 if size < 0 :
338340 size = io .DEFAULT_BUFFER_SIZE
339341 return self ._buffer .read1 (size )
340342
341343 def readinto (self , b ):
342344 self ._check_not_closed ()
343- if self .mode != READ :
344- import errno
345- raise OSError (errno .EBADF , "readinto() on write-only GzipFile object" )
345+ self ._check_read ("readinto" )
346346 return self ._buffer .readinto (b )
347347
348348 def readinto1 (self , b ):
349349 self ._check_not_closed ()
350- if self .mode != READ :
351- import errno
352- raise OSError (errno .EBADF , "readinto1() on write-only GzipFile object" )
350+ self ._check_read ("readinto1" )
353351 return self ._buffer .readinto1 (b )
354352
355353 def peek (self , n ):
356354 self ._check_not_closed ()
357- if self .mode != READ :
358- import errno
359- raise OSError (errno .EBADF , "peek() on write-only GzipFile object" )
355+ self ._check_read ("peek" )
360356 return self ._buffer .peek (n )
361357
362358 @property
0 commit comments