[FFmpeg-devel] [PATCH] avformat/internal: log errno with ff_rename failure

wm4 nfxjfg at googlemail.com
Sat Dec 23 01:37:37 EET 2017


On Fri, 22 Dec 2017 15:17:33 -0800
Aman Gupta <ffmpeg at tmm1.net> wrote:

> From: Aman Gupta <aman at tmm1.net>
> 
> ---
>  libavformat/internal.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libavformat/internal.h b/libavformat/internal.h
> index 36a57214ce..aac566aace 100644
> --- a/libavformat/internal.h
> +++ b/libavformat/internal.h
> @@ -542,7 +542,7 @@ static inline int ff_rename(const char *oldpath, const char *newpath, void *logc
>      if (rename(oldpath, newpath) == -1) {
>          ret = AVERROR(errno);
>          if (logctx)
> -            av_log(logctx, AV_LOG_ERROR, "failed to rename file %s to %s\n", oldpath, newpath);
> +            av_log(logctx, AV_LOG_ERROR, "failed to rename file %s to %s: %s\n", oldpath, newpath, strerror(errno));
>      }
>      return ret;
>  }

strerror() is not thread-safe. you could use av_err2str() after
wrapping the errno value as AVERROR. This would return the same as
strerror(), but using a thread-safe alternative function if possible.


More information about the ffmpeg-devel mailing list