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.

backport r23031 by stefano


Originally committed as revision 23174 to svn://svn.ffmpeg.org/ffmpeg/branches/0.6
This commit is contained in:
Reinhard Tartler 2010-05-19 08:03:22 +00:00
parent 0db6f6cfed
commit 1673bf86d6
3 changed files with 6 additions and 3 deletions

View File

@ -41,7 +41,7 @@
#define LIBAVUTIL_VERSION_MAJOR 50 #define LIBAVUTIL_VERSION_MAJOR 50
#define LIBAVUTIL_VERSION_MINOR 15 #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, \ #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
LIBAVUTIL_VERSION_MINOR, \ LIBAVUTIL_VERSION_MINOR, \

View File

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

View File

@ -64,7 +64,8 @@
* error message indicating the errnum provided to errbuf. * error message indicating the errnum provided to errbuf.
* *
* @param errbuf_size the size in bytes of 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); int av_strerror(int errnum, char *errbuf, size_t errbuf_size);