private void emit_eobrun()
{
if (EOBRUN > 0)
{
/* if there is any pending EOBRUN */
uint temp = EOBRUN;
int nbits = 0;
while ((temp >>= 1) != 0)
nbits++;
/* safety check: shouldn't happen given limited correction-bit buffer */
if (nbits > 14)
m_cinfo.ERREXIT(J_MESSAGE_CODE.JERR_HUFF_MISSING_CODE);
emit_ac_symbol(ac_tbl_no, nbits << 4);
if (nbits != 0)
emit_bits_e((int)EOBRUN, nbits);
EOBRUN = 0;
/* Emit any buffered correction bits */
emit_buffered_bits(0, BE);
BE = 0;
}
}