|  | @@ -62,12 +62,6 @@ func (this *AuthChunkReader) Read() (*alloc.Buffer, error) {
 | 
	
		
			
				|  |  |  		buffer = AllocBuffer(this.chunkLength).Clear()
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -	_, err := buffer.FillFrom(this.reader)
 | 
	
		
			
				|  |  | -	if err != nil {
 | 
	
		
			
				|  |  | -		buffer.Release()
 | 
	
		
			
				|  |  | -		return nil, err
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  	if this.chunkLength == -1 {
 | 
	
		
			
				|  |  |  		for buffer.Len() < 6 {
 | 
	
		
			
				|  |  |  			_, err := buffer.FillFrom(this.reader)
 | 
	
	
		
			
				|  | @@ -80,6 +74,12 @@ func (this *AuthChunkReader) Read() (*alloc.Buffer, error) {
 | 
	
		
			
				|  |  |  		this.chunkLength = int(length) - 4
 | 
	
		
			
				|  |  |  		this.validator = NewValidator(serial.BytesLiteral(buffer.Value[2:6]).Uint32Value())
 | 
	
		
			
				|  |  |  		buffer.SliceFrom(6)
 | 
	
		
			
				|  |  | +	} else if buffer.Len() < this.chunkLength {
 | 
	
		
			
				|  |  | +		_, err := buffer.FillFrom(this.reader)
 | 
	
		
			
				|  |  | +		if err != nil {
 | 
	
		
			
				|  |  | +			buffer.Release()
 | 
	
		
			
				|  |  | +			return nil, err
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	if this.chunkLength == 0 {
 |