public unsafe uint WriteFrom(nsIInputStream aFromStream, uint aCount) { PreparePointer((int)aCount); aFromStream.Read(new IntPtr(CurrentPointer), aCount); MovePointer(aCount); return(aCount); }
public unsafe uint WriteFrom( nsIInputStream aFromStream, uint aCount ) { PreparePointer( ( int ) aCount ); aFromStream.Read(new IntPtr(CurrentPointer), aCount); MovePointer( aCount ); return aCount; }
public unsafe override int Read(byte[] buffer, int offset, int count) { uint ret; // strict values & buffer size check before using pointers if ((offset < 0) || (count <= 0)) { return(0); } // offset >= 0 count>0 if ((offset + count) > buffer.Length) return(0); fixed(byte *bufferPtr = buffer) { byte *writePtr = bufferPtr + offset; ret = _inputStream.Read(new IntPtr(writePtr), (uint)count); } return(( int )ret); }