SVN: nagios-notify/trunk/nagios-notify
jajcus
jajcus at pld-linux.org
Fri Dec 14 12:52:20 CET 2012
Author: jajcus
Date: Fri Dec 14 12:52:20 2012
New Revision: 12606
Modified:
nagios-notify/trunk/nagios-notify
Log:
$(unescape:...) function added
to un-escape newlines in $LONGSERVICEOUTPUT$
Modified: nagios-notify/trunk/nagios-notify
==============================================================================
--- nagios-notify/trunk/nagios-notify (original)
+++ nagios-notify/trunk/nagios-notify Fri Dec 14 12:52:20 2012
@@ -82,6 +82,13 @@
return s;
}
+ # convert "\n", "\t" to the actual control characters
+ function unescape(s) {
+ gsub("\\\\n", "\n", s);
+ gsub("\\\\t", "\t", s);
+ return s;
+ }
+
# remove quotation marks or regexps if surrounded at both ends
function unquote(s, c1, c2) {
c1 = substr(s, 1, 1);
@@ -277,6 +284,14 @@
right = substr($0, RSTART + RLENGTH);
$0 = left urlencode(data) right;
}
+ # $(unescape:data)
+ while (match($0, /\$\(unescape:([^)]*)\)/)) {
+ pos = length("$(unescape:")
+ data = substr($0, RSTART + pos, RLENGTH - pos - 1);
+ left = substr($0, 0, RSTART);
+ right = substr($0, RSTART + RLENGTH);
+ $0 = left unescape(data) right;
+ }
# $(math:expression)
while (match($0, "\$\(math:("MATH_EXPR") *("MATH_OPS") *("MATH_EXPR")\)")) {
More information about the pld-cvs-commit
mailing list