Hi all,

I'm trying to parse a document with encoding 'ibm-37', using the ICU
transcoder.  The ICU data dll I use does have an entry for ibm-37, but the
code in TransService.cpp is never letting it get that far.  It seems that
TransService has a list of encodings that it deliberately disallows:

//  gDisallow1
//  gDisallowX
//      These area small set of encoding names that, for temporary reasons,
//      we disallow at this time.
//
//  gDisallowList
//  gDisallowListSize
//      An array of the disallow strings, for easier searching below.
//

Is there anything to stop me commenting out the code which implements this
check?  Should I raise a bug report so that the code is chopped out of the
next Xerces release?

Here's the code which checks the list, from
XmlTransService::makeNewTranscoderFor()

    //
    //  For now, we have a little list of encodings that we disallow
    //  explicitly. So lets check for them up front. They all start with
    //  IBM, so we can do a quick check to see if we should even do
    //  anything at all.
    //
    if (XMLString::startsWith(upBuf, gDisallowPre))
    {
        for (unsigned int index = 0; index < gDisallowListSize; index++)
        {
            // If its one of our guys, then pretend we don't understand it
            if (!XMLString::compareString(upBuf, gDisallowList[index]))
                return 0;
        }
    }

Does anyone recall why the encodings were disallowed?

Thanks in advance,

Matt Lovett




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to