From 3b41e256ee0e91ff17233b4b046d3a712433b245 Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Thu, 10 Jan 2002 16:17:12 +0000 Subject: [PATCH] failed on Mac files. Reported by: Matt McHenry git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270662 13f79535-47bb-0310-9956-ffa450edef68 --- WHATSNEW | 2 ++ src/etc/testcases/taskdefs/fixcrlf/build.xml | 7 ++++++ .../taskdefs/fixcrlf/expected/Mac2Unix | 2 ++ .../testcases/taskdefs/fixcrlf/input/Mac2Unix | 1 + .../apache/tools/ant/taskdefs/FixCRLF.java | 23 +++++++++++-------- .../tools/ant/taskdefs/FixCrLfTest.java | 8 ++++++- 6 files changed, 32 insertions(+), 11 deletions(-) create mode 100644 src/etc/testcases/taskdefs/fixcrlf/expected/Mac2Unix create mode 100644 src/etc/testcases/taskdefs/fixcrlf/input/Mac2Unix diff --git a/WHATSNEW b/WHATSNEW index 9c0c1ecca..69f73da29 100644 --- a/WHATSNEW +++ b/WHATSNEW @@ -60,6 +60,8 @@ Fixed bugs: * Some junit formatters incorrectly assumed that all testcases would inherit from junit.framework.TestCase. +* dropped the first characters from Mac files. + Other changes: -------------- * attempts to rename the directory, if everything inside it is diff --git a/src/etc/testcases/taskdefs/fixcrlf/build.xml b/src/etc/testcases/taskdefs/fixcrlf/build.xml index 4fe7c126d..b99f579d4 100644 --- a/src/etc/testcases/taskdefs/fixcrlf/build.xml +++ b/src/etc/testcases/taskdefs/fixcrlf/build.xml @@ -97,6 +97,13 @@ /> + + + + -1) { - eol = CR; - eolstr = "\r"; - } else { - eol = LF; - eolstr = "\n"; - } - } - else { + eol = CR; + eolstr = "\r"; + } else if (Os.isFamily("dos")) { ctrlz = ASIS; eol = CRLF; eolstr = "\r\n"; + } else { + ctrlz = REMOVE; + eol = LF; + eolstr = "\n"; } } @@ -853,6 +852,7 @@ public class FixCRLF extends MatchingTask { // Regard \r\r not followed by \n as two lines ++eolcount; eolStr.append('\r'); + reader.mark(2); switch ((char)(ch = reader.read())) { case '\r': if ((char)(ch = reader.read()) == '\n') { @@ -864,6 +864,9 @@ public class FixCRLF extends MatchingTask { ++eolcount; eolStr.append('\n'); break; + default: + reader.reset(); + break; } // end of switch ((char)(ch = reader.read())) break; diff --git a/src/testcases/org/apache/tools/ant/taskdefs/FixCrLfTest.java b/src/testcases/org/apache/tools/ant/taskdefs/FixCrLfTest.java index d92588773..6f0f65991 100644 --- a/src/testcases/org/apache/tools/ant/taskdefs/FixCrLfTest.java +++ b/src/testcases/org/apache/tools/ant/taskdefs/FixCrLfTest.java @@ -1,7 +1,7 @@ /* * The Apache Software License, Version 1.1 * - * Copyright (c) 2001 The Apache Software Foundation. All rights + * Copyright (c) 2001-2002 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without @@ -132,6 +132,12 @@ public class FixCrLfTest extends BuildFileTest { new File("src/etc/testcases/taskdefs/fixcrlf/result/Junk9.java")); } + public void testMacLines() throws IOException { + executeTarget("testMacLines"); + assertEqualContent(new File("src/etc/testcases/taskdefs/fixcrlf/expected/Mac2Unix"), + new File("src/etc/testcases/taskdefs/fixcrlf/result/Mac2Unix")); + } + public void testNoOverwrite() throws IOException { executeTarget("test1"); File result =