public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset)
{
ValidateTransformBlock(inputBuffer, inputOffset, inputCount);
if (_inputBuffer == null) throw new ObjectDisposedException(null, SR.ObjectDisposed_Generic);
int effectiveCount;
byte[] temp = GetTempBuffer(inputBuffer, inputOffset, inputCount, out effectiveCount);
if (effectiveCount + _inputIndex < 4)
{
Buffer.BlockCopy(temp, 0, _inputBuffer, _inputIndex, effectiveCount);
_inputIndex += effectiveCount;
return 0;
}
byte[] result = ConvertFromBase64(temp, effectiveCount);
Buffer.BlockCopy(result, 0, outputBuffer, outputOffset, result.Length);
return result.Length;
}