IBM Support

LO85846: MIME MESSAGES WITH CHARACTER ENCODING CP936 DISPLAY AS GARBAGE C ODE ON NOTES CLIENT

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • Environment:
    Notes client 9.0.1 on Windows 7, please make sure the OS's
    system locale is
    English Or Traditional Chinese.
    
    
    Steps to reproduce:
    1.Open sample database test.nsf with Notes client
    2.Open the sample mail.
    
    Problem:
    You can see this mail body which contained many Chinese
    characters display as
    unreadable code.
    
    From the page source of this MIME message, we can see the
    character encoding is
    cp936, this email was forwared by traveler client on
    iOS(Traveler server
    version is 9.0.1.5)
    
    --Apple-Mail-F18F7CBF-F631-4886-AF27-E70661F72F42
    Content-Type: text/plain;   charset=cp936
    Content-Transfer-Encoding: quoted-printable
    
    Although we have workaround on Notes client to choose the
    encoding to GB2312 or
    GB18030, the Chinese characters in the mail body will display
    well, but custmer
    think Notes should support charset cp936(GBK) on Windows that
    system locale is
    English or Traditional Chinese, we found that the Foxmail 7
    client support it
    well.
    

Local fix

  • Open the email, from Notes top menu; View->Encoding->Other
    Choose mime Character sets as Simplified Chinese GB18030 OR
    GB2312.
    
    Then the Chinese Characters in the mail body display well.
    

Problem summary

  • LCU supports CP936, but the caller function does not use the
     correct CSID (Charset ID) to translate the string, it uses
     0x52 (i.e. cckSTRCharSetIBMCP1252 or cckSTRCharSetANSI),
     however, it should be 0x1b (i.e. cckSTRCharSetIBMCP936 or
     cckSTRCharSetGB). The reason is: Before the Notes client calls
     into the HTML/SGML parser, it calls GetCharSetIdData() with
     the charset name, CP936, but no mapping exists and there was
     no entry in the default mapping table, so Notes uses its
     default charset, i.e. 0x52    Solution is adding the cp936 -
     cckSTRCharSetIBMCP936 mapping info into
     DefaultCharSetNameMap[] array, which is defined in
     \notes\misc\charset2.cpp.
    

Problem conclusion

  • LCU supports CP936, but the caller function does not use the
     correct CSID (Charset ID) to translate the string, it uses
     0x52 (i.e. cckSTRCharSetIBMCP1252 or cckSTRCharSetANSI),
     however, it should be 0x1b (i.e. cckSTRCharSetIBMCP936 or
     cckSTRCharSetGB). The reason is: Before the Notes client calls
     into the HTML/SGML parser, it calls GetCharSetIdData() with
     the charset name, CP936, but no mapping exists and there was
     no entry in the default mapping table, so Notes uses its
     default charset, i.e. 0x52    Solution is adding the cp936 -
     cckSTRCharSetIBMCP936 mapping info into
     DefaultCharSetNameMap[] array, which is defined in
     \notes\misc\charset2.cpp.
    

Temporary fix

Comments

  • This APAR is associated with SPR# WBJT9YVM48.
    LCU supports CP936, but the caller function does not use the
     correct CSID (Charset ID) to translate the string, it uses
     0x52 (i.e. cckSTRCharSetIBMCP1252 or cckSTRCharSetANSI),
     however, it should be 0x1b (i.e. cckSTRCharSetIBMCP936 or
     cckSTRCharSetGB). The reason is: Before the Notes client calls
     into the HTML/SGML parser, it calls GetCharSetIdData() with
     the charset name, CP936, but no mapping exists and there was
     no entry in the default mapping table, so Notes uses its
     default charset, i.e. 0x52    Solution is adding the cp936 -
     cckSTRCharSetIBMCP936 mapping info into
     DefaultCharSetNameMap[] array, which is defined in
     \notes\misc\charset2.cpp.
    

APAR Information

  • APAR number

    LO85846

  • Reported component name

    NOTES CLIENT

  • Reported component ID

    5724E6255

  • Reported release

    901

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2015-07-29

  • Closed date

    2015-12-16

  • Last modified date

    2015-12-16

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    NOTES CLIENT

  • Fixed component ID

    5724E6255

Applicable component levels

  • R901 PSN

       UP

[{"Business Unit":{"code":"BU055","label":"Cognitive Applications"},"Product":{"code":"SSKTWP","label":"Lotus Notes"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0.1","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
16 December 2015