void wxConvAuto::InitFromBOM(BOMType bomType) { m_consumedBOM = false; switch ( bomType ) { case BOM_Unknown: wxFAIL_MSG( "shouldn't be called for this BOM type" ); break; case BOM_None: // use the default break; case BOM_UTF32BE: m_conv = new wxMBConvUTF32BE; m_ownsConv = true; break; case BOM_UTF32LE: m_conv = new wxMBConvUTF32LE; m_ownsConv = true; break; case BOM_UTF16BE: m_conv = new wxMBConvUTF16BE; m_ownsConv = true; break; case BOM_UTF16LE: m_conv = new wxMBConvUTF16LE; m_ownsConv = true; break; case BOM_UTF8: InitWithUTF8(); break; default: wxFAIL_MSG( "unknown BOM type" ); } if ( !m_conv ) { // we end up here if there is no BOM or we didn't recognize it somehow // (this shouldn't happen but still don't crash if it does), so use the // default encoding InitWithUTF8(); m_consumedBOM = true; // as there is nothing to consume } }
void wxConvAuto::InitFromBOM(BOMType bomType) { m_consumedBOM = false; switch ( bomType ) { case BOM_UTF32BE: m_conv = new wxMBConvUTF32BE; m_ownsConv = true; break; case BOM_UTF32LE: m_conv = new wxMBConvUTF32LE; m_ownsConv = true; break; case BOM_UTF16BE: m_conv = new wxMBConvUTF16BE; m_ownsConv = true; break; case BOM_UTF16LE: m_conv = new wxMBConvUTF16LE; m_ownsConv = true; break; case BOM_UTF8: InitWithUTF8(); break; default: wxFAIL_MSG( _T("unexpected BOM type") ); // fall through: still need to create something case BOM_None: InitWithUTF8(); m_consumedBOM = true; // as there is nothing to consume } }