mirror of https://github.com/v2ray/v2ray-core
				
				
				
			remove unused members
							parent
							
								
									9bc6a5813e
								
							
						
					
					
						commit
						6d770d6f30
					
				|  | @ -9,34 +9,11 @@ import ( | |||
| 	"v2ray.com/core/common/signal" | ||||
| ) | ||||
| 
 | ||||
| type errorHandler func(error) error | ||||
| type dataHandler func(MultiBuffer) | ||||
| 
 | ||||
| //go:notinheap
 | ||||
| type copyHandler struct { | ||||
| 	onReadError  []errorHandler | ||||
| 	onData       []dataHandler | ||||
| 	onWriteError []errorHandler | ||||
| } | ||||
| 
 | ||||
| func (h *copyHandler) readFrom(reader Reader) (MultiBuffer, error) { | ||||
| 	mb, err := reader.ReadMultiBuffer() | ||||
| 	if err != nil { | ||||
| 		for _, handler := range h.onReadError { | ||||
| 			err = handler(err) | ||||
| 		} | ||||
| 	} | ||||
| 	return mb, err | ||||
| } | ||||
| 
 | ||||
| func (h *copyHandler) writeTo(writer Writer, mb MultiBuffer) error { | ||||
| 	err := writer.WriteMultiBuffer(mb) | ||||
| 	if err != nil { | ||||
| 		for _, handler := range h.onWriteError { | ||||
| 			err = handler(err) | ||||
| 		} | ||||
| 	} | ||||
| 	return err | ||||
| 	onData []dataHandler | ||||
| } | ||||
| 
 | ||||
| // SizeCounter is for counting bytes copied by Copy().
 | ||||
|  | @ -101,13 +78,13 @@ func IsWriteError(err error) bool { | |||
| 
 | ||||
| func copyInternal(reader Reader, writer Writer, handler *copyHandler) error { | ||||
| 	for { | ||||
| 		buffer, err := handler.readFrom(reader) | ||||
| 		buffer, err := reader.ReadMultiBuffer() | ||||
| 		if !buffer.IsEmpty() { | ||||
| 			for _, handler := range handler.onData { | ||||
| 				handler(buffer) | ||||
| 			} | ||||
| 
 | ||||
| 			if werr := handler.writeTo(writer, buffer); werr != nil { | ||||
| 			if werr := writer.WriteMultiBuffer(buffer); werr != nil { | ||||
| 				return writeError{werr} | ||||
| 			} | ||||
| 		} | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Darien Raymond
						Darien Raymond