Uploaded image for project: 'Daffodil'
  1. Daffodil
  2. DFDL-1314

Unparse: escapeEscapeCharacter not behaving properly

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: 1.1.0
    • Fix Version/s: 1.1.0
    • Component/s: Unparsing
    • Labels:
      None

      Description

      When unparsing, if the infoset contains an escape character followed by another character, the unparsed document currently contains two instances of the escape character, and the following character is removed. For example:
      escapeChar = /, escapeEscapeChar = \

      <e1>/home</e1>

      In this case, I would think we expect the input to be:

      \/home

      However, the unparser is coming up with:

      //ome

      Something similar is happening with escape blocks. I've created parserTestCase equivalents for the tests. The parse equivalent for the first test behaves as expected. The second is experiencing memory issues (DFDL-1315 - Escape block test using escapeEscapeCharacter using large amounts of Java Heap Space ).

      See tests:
      unparseDelimitedEscapedString03
      unparseDelimitedEscapedString04

      in the following files:
      daffodil-test/src/test/resources/edu/illinois/ncsa/daffodil/section07/escapeScheme/escapeSchemeUnparse.tdml
      daffodil-test/src/test/scala-debug/edu/illinois/ncsa/daffodil/section07/escapeScheme/TestEscapeSchemeUnparseDebug.scala

        Gliffy Diagrams

          Attachments

            Activity

              People

              Assignee:
              jchab Jessie Chab
              Reporter:
              jchab Jessie Chab
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - Not Specified
                  Not Specified
                  Logged:
                  Time Spent - 1 hour, 36 minutes
                  1h 36m

                    Tasks