diff opt.c @ 4748:c6a2b573f259 libavcodec

Fix a bug in av_find_opt(). Because some of the AVOption structures have field unit = NULL, the function could pass NULL to strcmp and cause a segfault. Patch by Kamil Nowosad, k nowosad % students mimuw edu pl. Original thread: Subject: [PATCH] small bugfix in av_find_opt() Date: 03/23/2007 12:20 PM
author takis
date Fri, 30 Mar 2007 09:26:13 +0000
parents 66aff3b71861
children 2b72f9bc4f06
line wrap: on
line diff
--- a/opt.c	Fri Mar 30 09:05:52 2007 +0000
+++ b/opt.c	Fri Mar 30 09:26:13 2007 +0000
@@ -36,7 +36,7 @@
     const AVOption *o= c->option;
 
     for(;o && o->name; o++){
-        if(!strcmp(o->name, name) && (!unit || !strcmp(o->unit, unit)) && (o->flags & mask) == flags )
+        if(!strcmp(o->name, name) && (!unit || (o->unit && !strcmp(o->unit, unit))) && (o->flags & mask) == flags )
             return o;
     }
     return NULL;