diff --git a/libavformat/avio.c b/libavformat/avio.c index 1d40da67ee..e043058974 100644 --- a/libavformat/avio.c +++ b/libavformat/avio.c @@ -49,7 +49,7 @@ static const AVClass urlcontext_class = static int default_interrupt_cb(void); URLProtocol *first_protocol = NULL; -URLInterruptCB *url_interrupt_cb = default_interrupt_cb; +int (*url_interrupt_cb)(void) = default_interrupt_cb; URLProtocol *av_protocol_next(URLProtocol *p) { @@ -389,7 +389,7 @@ static int default_interrupt_cb(void) return 0; } -void avio_set_interrupt_cb(URLInterruptCB *interrupt_cb) +void avio_set_interrupt_cb(int (*interrupt_cb)(void)) { if (!interrupt_cb) interrupt_cb = default_interrupt_cb; diff --git a/libavformat/avio.h b/libavformat/avio.h index e9aa49991e..701f3fe66c 100644 --- a/libavformat/avio.h +++ b/libavformat/avio.h @@ -90,11 +90,9 @@ typedef struct URLPollEntry { * silently ignored. */ #define URL_FLAG_NONBLOCK 4 -#endif typedef int URLInterruptCB(void); -#if FF_API_OLD_AVIO /** * @defgroup old_url_funcs Old url_* functions * @deprecated use the buffered API based on AVIOContext instead @@ -117,7 +115,7 @@ attribute_deprecated void url_get_filename(URLContext *h, char *buf, int buf_siz attribute_deprecated int av_url_read_pause(URLContext *h, int pause); attribute_deprecated int64_t av_url_read_seek(URLContext *h, int stream_index, int64_t timestamp, int flags); -attribute_deprecated void url_set_interrupt_cb(URLInterruptCB *interrupt_cb); +attribute_deprecated void url_set_interrupt_cb(int (*interrupt_cb)(void)); #endif /** @@ -132,7 +130,7 @@ int url_exist(const char *url); * in this case by the interrupted function. 'NULL' means no interrupt * callback is given. */ -void avio_set_interrupt_cb(URLInterruptCB *interrupt_cb); +void avio_set_interrupt_cb(int (*interrupt_cb)(void)); #if FF_API_OLD_AVIO /* not implemented */ diff --git a/libavformat/url.h b/libavformat/url.h index 7482611e11..941b8af1d1 100644 --- a/libavformat/url.h +++ b/libavformat/url.h @@ -31,7 +31,7 @@ #if !FF_API_OLD_AVIO #define URL_PROTOCOL_FLAG_NESTED_SCHEME 1 /*< The protocol name can be the first part of a nested protocol scheme */ -extern URLInterruptCB *url_interrupt_cb; +extern int (*url_interrupt_cb)(void); #endif /**