|  | @@ -121,6 +121,7 @@ func (w *BufferedWriter) SetBuffered(f bool) error {
 | 
	
		
			
				|  |  |  	return nil
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +// ReadFrom implements io.ReaderFrom.
 | 
	
		
			
				|  |  |  func (w *BufferedWriter) ReadFrom(reader io.Reader) (int64, error) {
 | 
	
		
			
				|  |  |  	var sc SizeCounter
 | 
	
		
			
				|  |  |  	if !w.buffer.IsEmpty() {
 | 
	
	
		
			
				|  | @@ -130,11 +131,12 @@ func (w *BufferedWriter) ReadFrom(reader io.Reader) (int64, error) {
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +	w.buffered = false
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  	if readerFrom, ok := w.writer.(io.ReaderFrom); ok {
 | 
	
		
			
				|  |  |  		return readerFrom.ReadFrom(reader)
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -	w.buffered = false
 | 
	
		
			
				|  |  |  	err := Copy(NewReader(reader), w, CountSize(&sc))
 | 
	
		
			
				|  |  |  	return sc.Size, err
 | 
	
		
			
				|  |  |  }
 |