From 0e9e1fd41534c526d91bc5e64720cf5371783a74 Mon Sep 17 00:00:00 2001 From: tilghman Date: Thu, 25 Oct 2007 22:53:06 +0000 Subject: Backport alternate encoding of newline delimiters from trunk to 1.4, as approved by Russell Reported by blitzrage Closes issue #10903 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@87067 f38db490-d61c-443f-a65b-d21fe96a405b --- funcs/func_cut.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'funcs/func_cut.c') diff --git a/funcs/func_cut.c b/funcs/func_cut.c index a8b8c8152..09340cac5 100644 --- a/funcs/func_cut.c +++ b/funcs/func_cut.c @@ -145,7 +145,21 @@ static int cut_internal(struct ast_channel *chan, char *data, char *buffer, size return ERROR_NOMEM; } - d = args.delimiter[0] ? args.delimiter[0] : '-'; + if (args.delimiter[0] == '\\') { + if (args.delimiter[1] == 'n') + d = '\n'; + else if (args.delimiter[1] == 't') + d = '\t'; + else if (args.delimiter[1] == 'r') + d = '\r'; + else if (args.delimiter[1]) + d = args.delimiter[1]; + else + d = '-'; + } else if (args.delimiter[0]) + d = args.delimiter[0]; + else + d = '-'; /* String form of the delimiter, for use with strsep(3) */ snprintf(ds, sizeof(ds), "%c", d); -- cgit v1.2.3