Mercurial > mplayer.hg
diff libmpdemux/realrtsp/sdpplin.c @ 12266:096072d234c6
Some sanity and bound checking
author | rtognimp |
---|---|
date | Sat, 24 Apr 2004 10:33:19 +0000 |
parents | 6cb7a295ab0e |
children | 06a9914af502 |
line wrap: on
line diff
--- a/libmpdemux/realrtsp/sdpplin.c Fri Apr 23 22:30:18 2004 +0000 +++ b/libmpdemux/realrtsp/sdpplin.c Sat Apr 24 10:33:19 2004 +0000 @@ -96,13 +96,19 @@ static char *nl(char *data) { - return strchr(data,'\n')+1; + char *nlptr = (data) ? strchr(data,'\n') : NULL; + return (nlptr) ? nlptr + 1 : NULL; } static int filter(const char *in, const char *filter, char **out) { int flen=strlen(filter); - int len=strchr(in,'\n')-in; + int len; + + if (!in) + return 0; + + len = (strchr(in,'\n')) ? strchr(in,'\n')-in : strlen(in); if (!strncmp(in,filter,flen)) { @@ -135,7 +141,7 @@ } *data=nl(*data); - while (**data && *data[0]!='m') { + while (*data && **data && *data[0]!='m') { handled=0; @@ -236,7 +242,7 @@ int handled; int len; - while (*data) { + while (data && *data) { handled=0;