On Thu, Oct 1, 2015 at 7:16 AM, Ganesh Ajjanagadde <gajjanaga...@gmail.com> wrote: > On Sep 30, 2015 7:50 PM, "Marton Balint" <c...@passwd.hu> wrote: >> >> >> On Tue, 29 Sep 2015, Ganesh Ajjanagadde wrote: >> >>> SDL_CreateMutex and SDL_CreateCond can fail: >>> https://wiki.libsdl.org/SDL_CreateMutex. >>> This patch makes handling more robust in one instance. >>> >>> Signed-off-by: Ganesh Ajjanagadde <gajjanaga...@gmail.com> >>> --- >>> ffplay.c | 17 +++++++++++++---- >>> 1 file changed, 13 insertions(+), 4 deletions(-) >>> >>> diff --git a/ffplay.c b/ffplay.c >>> index 3c2407f..9466996 100644 >>> --- a/ffplay.c >>> +++ b/ffplay.c >>> @@ -451,12 +451,21 @@ static int packet_queue_put_nullpacket(PacketQueue >>> *q, int stream_index) >>> } >>> >>> /* packet queue handling */ >>> -static void packet_queue_init(PacketQueue *q) >>> +static int packet_queue_init(PacketQueue *q) >>> { >>> memset(q, 0, sizeof(PacketQueue)); >>> q->mutex = SDL_CreateMutex(); >>> + if (!q->mutex) { >>> + av_log(q, AV_LOG_FATAL, "SDL_CreateMutex(): %s\n", >>> SDL_GetError()); >>> + return AVERROR(ENOMEM); >>> + } >>> q->cond = SDL_CreateCond(); >>> + if (!q->cond) { >>> + av_log(q, AV_LOG_FATAL, "SDL_CreateCond(): %s\n", >>> SDL_GetError()); >>> + return AVERROR(ENOMEM); >>> + } >>> q->abort_request = 1; >>> + return 0; >>> } >>> >>> static void packet_queue_flush(PacketQueue *q) >>> @@ -3136,9 +3145,9 @@ static VideoState *stream_open(const char >>> *filename, AVInputFormat *iformat) >>> if (frame_queue_init(&is->sampq, &is->audioq, SAMPLE_QUEUE_SIZE, 1) < >>> 0) >>> goto fail; >>> >>> - packet_queue_init(&is->videoq); >>> - packet_queue_init(&is->audioq); >>> - packet_queue_init(&is->subtitleq); >>> + if (packet_queue_init(&is->videoq) || packet_queue_init(&is->audioq) >>> + || packet_queue_init(&is->subtitleq)) >>> + goto fail; >> >> >> Only cosmetics, but maybe you could use ffmpeg-api-like less-than-zero >> error checking with common indentation: >> >> if (packet_queue_init() < 0 || >> packet_queue_init() < 0 || >> packet_queue_init() < 0) > > Thanks for the style tip. I am currently away from a machine, will get to it > in a few days.
Changed style and updated patch. > >> >> Regards, >> Marton >> _______________________________________________ >> ffmpeg-devel mailing list >> ffmpeg-devel@ffmpeg.org >> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel