This project is mirrored from https://github.com/haskell/filepath. Pull mirroring updated .
  1. 10 Mar, 2015 1 commit
  2. 13 Dec, 2014 1 commit
  3. 10 Nov, 2014 2 commits
  4. 01 Nov, 2014 1 commit
  5. 28 Oct, 2014 2 commits
  6. 27 Oct, 2014 5 commits
  7. 26 Oct, 2014 5 commits
    • thomie's avatar
      Bug fix: normalise "//server/test" == "\\\\server\\test" · 645d2972
      thomie authored
      When drive represents a network share, slashes were not being normalised
      properly.
      645d2972
    • thomie's avatar
      Bug fix: normalize "\\" == "\\" · 9cacf87d
      thomie authored
      9cacf87d
    • thomie's avatar
      Bug fix: isValid "\\\\\\foo" == False · bef533f5
      thomie authored
      Share name can not start with a slash.
      bef533f5
    • thomie's avatar
      Bug fix: isDrive "" == False · f9ae34b0
      thomie authored
      isDrive is only called from `dropTrailingPathSeparator` and `combineAlways`.
      Both times occur after a check if the argument is not empty (i.e. null for
      combineAlways, and hasTrailingPathSeparator for dropTrailingPathSeparator). So
      this change is safe.
      f9ae34b0
    • thomie's avatar
      Bug fix: equalFilePath "C:\\" "C:" == False · bdc0446d
      thomie authored
      This started out as a simple refactoring of `equalFilePath`, and later turned
      out to also fix a small bug.
      
      The refactoring is: use `dropTrailingPathSeparator` instead of the custom
      function `dropTrailSlash`.
      
      A difference between these two functions is that `dropTrailingPathSeparator`
      potentially removes multiple trailing slashes, whereas `dropTrailSlash` only
      removes the last one. But since we `normalise` the FilePath first, which
      removes superfluous pathSeparators, this difference does not matter to us.
      
      Another difference is that `dropTrailingPathSeparator` does not drop slashes
      when the FilePath isDrive, but `dropTrailSlash` does:
      
      dropTrailSlash "C:\\" == "C:"
      dropTrailSlash "C:\\\\" == "C:\\"
      
      dropTrailingPathSeparator "C:\\" == "C:\\"
      dropTrailingPathSeparator "C:\\\\" == "C:\\\\"
      
      As a result, equalFilePath of drives on Windows changes slightly:
      
      Before:
      equalFilePath "C:\\" "C:" == True
      equalFilePath "C:\\\\" "C:" == False
      
      After:
      equalFilePath "C:\\" "C:" == False
      equalFilePath "C:\\\\" "C:" == False
      
      This can be considered a bug fix, since "C:\\foo" and "C:foo", and thus "C:\\"
      and "C:", are not the same thing.
      bdc0446d
  8. 24 Oct, 2014 1 commit
    • thomie's avatar
      Bug fix: pathSeparator can be forward slash on Windows · 6ab7023f
      thomie authored
      dropTrailingPathSeparator "/" would return "\\" on Windows, since that is the
      default:
      
          pathSeparator = if isWindows then '\\' else '/'
      
      The function `normalise` can be used to normalise pathSeparators in filepaths,
      the function `dropTrailingPathSeparator` shouldn't do it for you.
      
      The test now runs for both Posix as Windows.
      6ab7023f
  9. 09 Sep, 2014 1 commit
  10. 21 Mar, 2014 1 commit