From 6cb3f224d7e2280f8834d361bba1a72682aaaad1 Mon Sep 17 00:00:00 2001 From: Yajun Zeng Date: Wed, 24 Apr 2013 10:38:27 +0800 Subject: Fix overflow of rand in ARTPConnection without this fix, (rand()*1000)/RAND_MAX is mainly 0. Change-Id: I48ae940a7b6974b197d81732774c9dcea107bcf1 Signed-off-by: Yajun Zeng --- media/libstagefright/rtsp/ARTPConnection.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'media/libstagefright/rtsp') diff --git a/media/libstagefright/rtsp/ARTPConnection.cpp b/media/libstagefright/rtsp/ARTPConnection.cpp index 501a970..af369b5 100644 --- a/media/libstagefright/rtsp/ARTPConnection.cpp +++ b/media/libstagefright/rtsp/ARTPConnection.cpp @@ -117,7 +117,8 @@ void ARTPConnection::MakePortPair( bumpSocketBufferSize(*rtcpSocket); - unsigned start = (rand() * 1000)/ RAND_MAX + 15550; + /* rand() * 1000 may overflow int type, use long long */ + unsigned start = (unsigned)((rand()* 1000ll)/RAND_MAX) + 15550; start &= ~1; for (unsigned port = start; port < 65536; port += 2) { -- cgit v1.1