ffprobe: add support to '\b' and '\f' escaping in c_escape_str()

This commit is contained in:
Stefano Sabatini 2012-05-26 20:58:13 +02:00
parent 6994b552a6
commit c365cdf202
2 changed files with 5 additions and 3 deletions

View File

@ -245,9 +245,9 @@ Set the escape mode to use, default to "c".
It can assume one of the following values: It can assume one of the following values:
@table @option @table @option
@item c @item c
Perform C-like escaping. Strings containing a newline ('\n') or Perform C-like escaping. Strings containing a newline ('\n'), carriage
carriage return ('\r'), the escaping character ('\') or the item return ('\r'), a tab ('\t'), a form feed ('\f'), the escaping
separator character @var{SEP} are escaped using C-like fashioned character ('\') or the item separator character @var{SEP} are escaped using C-like fashioned
escaping, so that a newline is converted to the sequence "\n", a escaping, so that a newline is converted to the sequence "\n", a
carriage return to "\r", '\' to "\\" and the separator @var{SEP} is carriage return to "\r", '\' to "\\" and the separator @var{SEP} is
converted to "\@var{SEP}". converted to "\@var{SEP}".

View File

@ -505,6 +505,8 @@ static const char *c_escape_str(AVBPrint *dst, const char *src, const char sep,
for (p = src; *p; p++) { for (p = src; *p; p++) {
switch (*src) { switch (*src) {
case '\b': av_bprintf(dst, "%s", "\\b"); break;
case '\f': av_bprintf(dst, "%s", "\\f"); break;
case '\n': av_bprintf(dst, "%s", "\\n"); break; case '\n': av_bprintf(dst, "%s", "\\n"); break;
case '\r': av_bprintf(dst, "%s", "\\r"); break; case '\r': av_bprintf(dst, "%s", "\\r"); break;
case '\\': av_bprintf(dst, "%s", "\\\\"); break; case '\\': av_bprintf(dst, "%s", "\\\\"); break;