On Sat, Sep 12, 2015 at 05:05:04PM -0400, Alex Agranovsky wrote: > Amended: one of the new blocks ended up in a wrong location. > > libavformat/mpjpegdec.c | 19 +++++++++++++++---- > 1 file changed, 15 insertions(+), 4 deletions(-) > > diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c > index 8413ae7..1661b9d 100644 > --- a/libavformat/mpjpegdec.c > +++ b/libavformat/mpjpegdec.c > @@ -43,11 +43,20 @@ static int get_line(AVIOContext *pb, char *line, int > line_size) > static int split_tag_value(char **tag, char **value, char *line) > { > char *p = line; > + int foundData = 0; > > - while (*p != '\0' && *p != ':') > + *tag = NULL; > + *value = NULL; > + > + > + while (*p != '\0' && *p != ':') { > + if (!av_isspace(*p)) { > + foundData = 1; > + } > p++; > + } > if (*p != ':') > - return AVERROR_INVALIDDATA; > + return foundData?AVERROR_INVALIDDATA:0; > > *p = '\0'; > *tag = line; > @@ -67,7 +76,7 @@ static int check_content_type(char *line) > char *tag, *value; > int ret = split_tag_value(&tag, &value, line); > > - if (ret < 0) > + if (ret < 0 || tag == NULL || value == NULL) > return ret;
doesnt this result in a probe score of AVPROBE_SCORE_MAX for an empty line, or am i misreading the code ? [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Good people do not need laws to tell them to act responsibly, while bad people will find a way around the laws. -- Plato
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel