diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-10-06 21:08:55 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-10-06 21:08:55 +0200 |
commit | d47dd84391f2a4d9dab36b375019bf05d83a5a29 (patch) | |
tree | 7bd409afd14056dfc1ff541700a3ea60c74e8c45 /libavcodec | |
parent | 67ddf21611b904de1ee3eb0206cd2744a135704a (diff) | |
parent | 577899a6458ccad9026eb268f10dc0b39c224c8d (diff) |
Merge commit '577899a6458ccad9026eb268f10dc0b39c224c8d'
* commit '577899a6458ccad9026eb268f10dc0b39c224c8d':
lavc: specify the behavior of av_lockmgr_register on failure.
Conflicts:
libavcodec/avcodec.h
libavcodec/utils.c
libavcodec/version.h
See: a950edb472e8823e34832c7313ba447b2db76f27
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/avcodec.h | 14 | ||||
-rw-r--r-- | libavcodec/utils.c | 5 | ||||
-rw-r--r-- | libavcodec/version.h | 2 |
3 files changed, 11 insertions, 10 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 7f985d4487..fd565849fa 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -5116,25 +5116,25 @@ enum AVLockOp { /** * Register a user provided lock manager supporting the operations - * specified by AVLockOp. The "mutex" argument to the function points + * specified by AVLockOp. The "mutex" argument to the function points * to a (void *) where the lockmgr should store/get a pointer to a user - * allocated mutex. It is NULL upon AV_LOCK_CREATE and equal to the - * value left by the last call for all other ops. If the lock manager is + * allocated mutex. It is NULL upon AV_LOCK_CREATE and equal to the + * value left by the last call for all other ops. If the lock manager is * unable to perform the op then it should leave the mutex in the same - * state as when it was called and return a non-zero value. However, + * state as when it was called and return a non-zero value. However, * when called with AV_LOCK_DESTROY the mutex will always be assumed to - * have been successfully destroyed. If av_lockmgr_register succeeds + * have been successfully destroyed. If av_lockmgr_register succeeds * it will return a non-negative value, if it fails it will return a * negative value and destroy all mutex and unregister all callbacks. * av_lockmgr_register is not thread-safe, it must be called from a * single thread before any calls which make use of locking are used. * - * @param cb User defined callback. av_lockmgr_register invokes calls + * @param cb User defined callback. av_lockmgr_register invokes calls * to this callback and the previously registered callback. * The callback will be used to create more than one mutex * each of which must be backed by its own underlying locking * mechanism (i.e. do not use a single static object to - * implement your lock manager). If cb is set to NULL the + * implement your lock manager). If cb is set to NULL the * lockmgr will be unregistered. */ int av_lockmgr_register(int (*cb)(void **mutex, enum AVLockOp op)); diff --git a/libavcodec/utils.c b/libavcodec/utils.c index c2c557934e..f1ba52cecd 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -3492,12 +3492,12 @@ int av_lockmgr_register(int (*cb)(void **mutex, enum AVLockOp op)) void *new_avformat_mutex = NULL; int err; if (err = cb(&new_codec_mutex, AV_LOCK_CREATE)) { - return err > 0 ? AVERROR_EXTERNAL : err; + return err > 0 ? AVERROR_UNKNOWN : err; } if (err = cb(&new_avformat_mutex, AV_LOCK_CREATE)) { // Ignore failures to destroy the newly created mutex. cb(&new_codec_mutex, AV_LOCK_DESTROY); - return err > 0 ? AVERROR_EXTERNAL : err; + return err > 0 ? AVERROR_UNKNOWN : err; } lockmgr_cb = cb; codec_mutex = new_codec_mutex; @@ -3536,6 +3536,7 @@ int ff_unlock_avcodec(void) if ((*lockmgr_cb)(&codec_mutex, AV_LOCK_RELEASE)) return -1; } + return 0; } diff --git a/libavcodec/version.h b/libavcodec/version.h index 9520ba6c06..6ac5e7cbda 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -30,7 +30,7 @@ #define LIBAVCODEC_VERSION_MAJOR 56 #define LIBAVCODEC_VERSION_MINOR 3 -#define LIBAVCODEC_VERSION_MICRO 100 +#define LIBAVCODEC_VERSION_MICRO 101 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ LIBAVCODEC_VERSION_MINOR, \ |