IBM Support

PM63401: reading from a UTF8 file results in erroneous character with the first correct character

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as Permanent restriction.

Error description

  • In DXL, If you read from a UTF8 file the very first character
    will be corrupt, it will be accompanied by an extra, erroneous
    character.
    
    Exactly how this character appears depends on how you view it.
    In this particular instance attribute names were being read from
    the file, when then used in the code, the DXL interpreter would
    correctly give an error saying the attribute doesn't exist.
    
    In this case that affects the operation of the Change
    integration.
    
    To recreate, create a UTF8 file, then read it, and print the
    ouput, using code such as :
    
    '
    Stream f = read ('z:\\Cases\\RATLC01630209\\other_utf8.txt',
    CP_UTF8)
    
    Buffer inputBuffer = create
    
    if (!null f) {
    
     while (true) {
    
      f -? inputBuffer
    
      print inputBuffer '\n'
    
      if end f then break
     }
     close f
    }
    '
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    In DXL, If you read from a UTF8 file the very first
    character will be corrupt, it will be accompanied by an
    extra, erroneous character.
    
    Exactly how this character appears depends on how you view
    it. In this particular instance attribute names were being
    read from the file, when then used in the code, the DXL
    interpreter would correctly give an error saying the
    attribute doesn't exist.
    
    In this case that affects the operation of the Change
    integration.
    
    To recreate, create a UTF8 file, then read it, and print the
    ouput, using code such as :
    
    "
    Stream f = read ("z:\\Cases\\RATLC01630209\\other_utf8.txt",
    CP_UTF8)
    
    Buffer inputBuffer = create
    
    if (!null f) {
    
     while (true) {
    
      f -? inputBuffer
    
      print inputBuffer "\n"
    
      if end f then break
     }
     close f
    }
    "
    

Problem conclusion

  • The code has been changed so that the erroneous character no
    longer appears and the first character is not corrupt.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM63401

  • Reported component name

    TLOGIC DOORS

  • Reported component ID

    5724V61DR

  • Reported release

    920

  • Status

    CLOSED PRS

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-04-26

  • Closed date

    2012-09-05

  • Last modified date

    2012-09-05

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

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

Fix information

Applicable component levels



Document information

More support for: Rational DOORS

Software version: 9.2

Reference #: PM63401

Modified date: 05 September 2012