[augeas-devel] augeas: master - Logrotate: tolerate whitespace at the end of a line
David Lutterkort
lutter at fedoraproject.org
Wed Feb 24 01:47:21 UTC 2010
Gitweb: http://git.fedorahosted.org/git/augeas.git?p=augeas.git;a=commitdiff;h=93b7b0aaf0dde37058b113e59696f6860008d0fb
Commit: 93b7b0aaf0dde37058b113e59696f6860008d0fb
Parent: cb509b442f26f3b808c7156bc0efcb5b7a9af426
Author: David Lutterkort <lutter at redhat.com>
AuthorDate: Tue Feb 23 17:11:40 2010 -0800
Committer: David Lutterkort <lutter at redhat.com>
CommitterDate: Tue Feb 23 17:11:40 2010 -0800
Logrotate: tolerate whitespace at the end of a line
Fixes bug #101
---
lenses/logrotate.aug | 6 ++++--
lenses/tests/test_logrotate.aug | 6 ++++++
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/lenses/logrotate.aug b/lenses/logrotate.aug
index 0ffc35d..51be590 100644
--- a/lenses/logrotate.aug
+++ b/lenses/logrotate.aug
@@ -16,14 +16,16 @@ module Logrotate =
let sep_spc = Util.del_ws_spc
let sep_val = del /[ \t]*=[ \t]*|[ \t]+/ " "
- let eol = Util.del_str "\n"
+ let eol = Util.eol
let num = /[0-9]+/
let word = /[^,#= \n\t{}]+/
let filename = /\/[^,#= \n\t{}]+/
let size = num . /[kMG]?/
(* define comments and empty lines *)
- let comment (indent:string) = [ label "#comment" . del /[ \t]*/ indent . del /#[ \t]*/ "# " . store /([^ \t\n][^\n]*)?/ . eol ]
+ let comment (indent:string) =
+ let nl = Util.del_str "\n" in
+ [ label "#comment" . del /[ \t]*/ indent . del /#[ \t]*/ "# " . store /([^ \t\n].*)?/ . nl ]
let empty = [ del /[ \t]*\n/ "\n" ]
diff --git a/lenses/tests/test_logrotate.aug b/lenses/tests/test_logrotate.aug
index 83f474a..ad78fa1 100644
--- a/lenses/tests/test_logrotate.aug
+++ b/lenses/tests/test_logrotate.aug
@@ -176,3 +176,9 @@ include /etc/logrotate.d
\tprerotate
\tfoobar\n
\tendscript\n}\n"
+
+(* Bug #101: whitespace at the end of the line *)
+test Logrotate.lns get "/file {\n missingok \t\n}\n" =
+ { "rule"
+ { "file" = "/file" }
+ { "missingok" = "missingok" } }
More information about the augeas-devel
mailing list