internal unsafe bool AddChar(char ch, int numBytes) { if (_chars != null) { if (_chars >= _charEnd) { // Throw maybe _bytes -= numBytes; // Didn't encode these bytes _enc.ThrowCharsOverflow(_decoder, _bytes <= _byteStart); // Throw? return(false); // No throw, but no store either } *(_chars++) = ch; } _charCountResult++; return(true); }