private unsafe byte* InvalidXmlChar( int ch, byte* pDst, bool entitize ) {
Debug.Assert( !xmlCharType.IsWhiteSpace( (char)ch ) );
Debug.Assert( !xmlCharType.IsAttributeValueChar( (char)ch ) );
if ( checkCharacters ) {
throw XmlConvert.CreateInvalidCharException( (char)ch );
}
else {
if ( entitize ) {
return CharEntity( pDst, (char)ch );
}
else {
if ( ch < 0x80 ) {
*pDst = (byte)ch;
pDst++;
}
else {
pDst = EncodeMultibyteUTF8( ch, pDst );
}
return pDst;
}
}
}