Make av_strerror() return -1 even in the case when av_strerror_r() is

not defined.

This allows applications to check if av_strerror() cannot provide a
meaningful representation for the provided error code, without having
to actually check the filled string.

Originally committed as revision 23031 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Stefano Sabatini 2010-05-05 21:44:47 +00:00
parent e9d96831f7
commit e2959f4558
3 changed files with 6 additions and 3 deletions

View File

@ -41,7 +41,7 @@
#define LIBAVUTIL_VERSION_MAJOR 50
#define LIBAVUTIL_VERSION_MINOR 15
#define LIBAVUTIL_VERSION_MICRO 0
#define LIBAVUTIL_VERSION_MICRO 1
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
LIBAVUTIL_VERSION_MINOR, \

View File

@ -36,8 +36,10 @@ int av_strerror(int errnum, char *errbuf, size_t errbuf_size)
} else {
#if HAVE_STRERROR_R
ret = strerror_r(AVUNERROR(errnum), errbuf, errbuf_size);
#else
ret = -1;
#endif
if (!HAVE_STRERROR_R || ret < 0)
if (ret < 0)
snprintf(errbuf, errbuf_size, "Error number %d occurred", errnum);
}

View File

@ -64,7 +64,8 @@
* error message indicating the errnum provided to errbuf.
*
* @param errbuf_size the size in bytes of errbuf
* @return 0 on success, a negative value otherwise
* @return 0 on success, a negative value if a description for errnum
* cannot be found
*/
int av_strerror(int errnum, char *errbuf, size_t errbuf_size);