[FFmpeg-cvslog] rtmp: Don't assume path points to a string of nonzero length
Martin Storsjö
git at videolan.org
Sat May 19 01:00:09 CEST 2012
ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Wed May 16 11:45:47 2012 +0300| [4b7304e80d5f4312e34a748e6c34eb6a7346af7b] | committer: Martin Storsjö
rtmp: Don't assume path points to a string of nonzero length
If using the new -rtmp_app and -rtmp_playpath parameters,
one can in many cases set the main url to just rtmp://server/.
If the trailing slash is omitted, path is a string of zero length,
and using path+1 will end up reading uninitialized data.
Signed-off-by: Martin Storsjö <martin at martin.st>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4b7304e80d5f4312e34a748e6c34eb6a7346af7b
---
libavformat/rtmpproto.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/libavformat/rtmpproto.c b/libavformat/rtmpproto.c
index 427655c..1b86c44 100644
--- a/libavformat/rtmpproto.c
+++ b/libavformat/rtmpproto.c
@@ -895,9 +895,10 @@ static int rtmp_open(URLContext *s, const char *uri, int flags)
fname = path + 10;
memcpy(rt->app, "ondemand", 9);
} else {
- char *p = strchr(path + 1, '/');
+ char *next = *path ? path + 1 : path;
+ char *p = strchr(next, '/');
if (!p) {
- fname = path + 1;
+ fname = next;
rt->app[0] = '\0';
} else {
char *c = strchr(p + 1, ':');
More information about the ffmpeg-cvslog
mailing list