From bac1b31bf63554bd9e0e38ef06125234aff41dc9 Mon Sep 17 00:00:00 2001 From: Alexander Strasser Date: Sun, 9 Sep 2012 21:27:13 +0200 Subject: [PATCH] lavf/segment: Simplify CSV field quoting code Should also be faster (though I doubt that hardly ever matters for the usage here). Also remove the pointer copy. Since we do not need to reset the pointer to the start of the string, it is not needed anymore. Signed-off-by: Alexander Strasser --- libavformat/segment.c | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/libavformat/segment.c b/libavformat/segment.c index dc123495da..07b8da3e2a 100644 --- a/libavformat/segment.c +++ b/libavformat/segment.c @@ -76,23 +76,15 @@ typedef struct { static void print_csv_escaped_str(AVIOContext *ctx, const char *str) { - const char *p; - int quote = 0; - - /* check if input needs quoting */ - for (p = str; *p; p++) - if (strchr("\",\n\r", *p)) { - quote = 1; - break; - } + int quote = !!str[strcspn(str, "\",\n\r")]; if (quote) avio_w8(ctx, '"'); - for (p = str; *p; p++) { - if (*p == '"') + for (; *str; str++) { + if (*str == '"') avio_w8(ctx, '"'); - avio_w8(ctx, *p); + avio_w8(ctx, *str); } if (quote) avio_w8(ctx, '"');