Uploaded image for project: 'Maven Shared Components'
  1. Maven Shared Components
  2. MSHARED-228

MultiDelimiterInterpolatorFilterReaderLineEnding() does not filter after a token is escaped

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: maven-filtering-1.0
    • Fix Version/s: maven-filtering-1.1
    • Component/s: maven-filtering
    • Labels:
      None
    • Environment:
      java version "1.6.0_33"
      Java(TM) SE Runtime Environment (build 1.6.0_33-b03-424-10M3720)
      Java HotSpot(TM) 64-Bit Server VM (build 20.8-b03-424, mixed mode)

      Description

      When an attempt is made to filter the following string:

      export SERVER_ENV=\${SERVER_ENV:${httpd.server.env}}

      The escape character "\" ends up escaping the entire token, or failing that the entire line, and the filter "$

      {httpd.server.env}

      " is unresolved.

      Expected:

      export SERVER_ENV=$

      {SERVER_ENV:sandbox}

      Actual:

      export SERVER_ENV=${SERVER_ENV:${httpd.server.env}}

      Patch to follow.

        Issue Links

          Activity

          Hide
          minfrin Graham Leggett added a comment -

          Turned out there were many edge cases not covered by the original code, and arbitrary assumptions made (such as the closing token only works if it is one character long), so my only option to fix this was to rewrite the filter parsing code.

          Patch attached, new tests, all existing tests pass.

          Show
          minfrin Graham Leggett added a comment - Turned out there were many edge cases not covered by the original code, and arbitrary assumptions made (such as the closing token only works if it is one character long), so my only option to fix this was to rewrite the filter parsing code. Patch attached, new tests, all existing tests pass.
          Hide
          minfrin Graham Leggett added a comment -

          Fix and test cases for 1.1-SNAPSHOT.

          Show
          minfrin Graham Leggett added a comment - Fix and test cases for 1.1-SNAPSHOT.
          Hide
          olamy Olivier Lamy (*$^¨%`£) added a comment -

          Thanks!
          Just have very very quick look on the patch.
          For EOL you use '\n' ? (will that work everywhere )

          Show
          olamy Olivier Lamy (*$^¨%`£) added a comment - Thanks! Just have very very quick look on the patch. For EOL you use '\n' ? (will that work everywhere )
          Hide
          minfrin Graham Leggett added a comment -

          I didn't do anything special with respect to EOL, just used what was there before to match the existing style - is the svn:eol-style property set correctly for the project?

          Show
          minfrin Graham Leggett added a comment - I didn't do anything special with respect to EOL, just used what was there before to match the existing style - is the svn:eol-style property set correctly for the project?
          Hide
          olamy Olivier Lamy (*$^¨%`£) added a comment -

          correct.
          Sorry I misread the patch file.

          Show
          olamy Olivier Lamy (*$^¨%`£) added a comment - correct. Sorry I misread the patch file.
          Hide
          olamy Olivier Lamy (*$^¨%`£) added a comment -

          applied.
          Thanks!

          Show
          olamy Olivier Lamy (*$^¨%`£) added a comment - applied. Thanks!

            People

            • Assignee:
              olamy Olivier Lamy (*$^¨%`£)
              Reporter:
              minfrin Graham Leggett
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development