swscale: fix NULL checking in sws_alloc_context()
authorXi Wang <xi.wang@gmail.com>
Fri, 4 Jan 2013 21:15:33 +0000 (21:15 +0000)
committerDerek Buitenhuis <derek.buitenhuis@gmail.com>
Sat, 5 Jan 2013 01:44:00 +0000 (20:44 -0500)
sws_getCachedContext() and sws_getContext() expect sws_alloc_context()
to return NULL when out of memory, as follows.

    if (!(context = sws_alloc_context()))
        return NULL;

This patch fixes sws_alloc_context() to return NULL in that case.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
libswscale/utils.c

index e5e4d60..f0a2b46 100644 (file)
@@ -844,8 +844,10 @@ SwsContext *sws_alloc_context(void)
 {
     SwsContext *c = av_mallocz(sizeof(SwsContext));
 
-    c->av_class = &sws_context_class;
-    av_opt_set_defaults(c);
+    if (c) {
+        c->av_class = &sws_context_class;
+        av_opt_set_defaults(c);
+    }
 
     return c;
 }