ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinha...@outlook.com> | Sun Sep 26 04:07:30 2021 +0200| [3022f7487474ebb2812ae5e05b4be9b40431c20e] | committer: Andreas Rheinhardt
avformat/argo_asf: Use memcpy to copy string without its NUL This avoids a -Wstringop-truncation warning from GCC which takes issue with the fact that the destination might not be NUL-terminated. Reviewed-by: Zane van Iperen <z...@zanevaniperen.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3022f7487474ebb2812ae5e05b4be9b40431c20e --- libavformat/argo_asf.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/libavformat/argo_asf.c b/libavformat/argo_asf.c index 5adafb7230..7e759c7c0c 100644 --- a/libavformat/argo_asf.c +++ b/libavformat/argo_asf.c @@ -356,25 +356,19 @@ static int argo_asf_write_header(AVFormatContext *s) .num_chunks = 1, .chunk_offset = ASF_FILE_HEADER_SIZE }; + const char *name = ctx->name, *end; + size_t len; /* * If the user specified a name, use it as is. Otherwise take the * basename and lop off the extension (if any). */ - if (ctx->name) { - strncpy(fhdr.name, ctx->name, sizeof(fhdr.name)); + if (name || !(end = strrchr((name = av_basename(s->url)), '.'))) { + len = strlen(name); } else { - const char *start = av_basename(s->url); - const char *end = strrchr(start, '.'); - size_t len; - - if (end) - len = end - start; - else - len = strlen(start); - - memcpy(fhdr.name, start, FFMIN(len, sizeof(fhdr.name))); + len = end - name; } + memcpy(fhdr.name, name, FFMIN(len, sizeof(fhdr.name))); chdr.num_blocks = 0; chdr.num_samples = ASF_SAMPLE_COUNT; _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".