[SCM] liblivemedia packaging branch, master, updated. debian/2009.11.27-1-25-g8dc3c95

xtophe-guest at users.alioth.debian.org xtophe-guest at users.alioth.debian.org
Fri Feb 12 23:09:14 UTC 2010


The following commit has been merged in the master branch:
commit d3f97707eb91258fbbfbfe2961947c6295edcd7c
Author: Christophe Mutricy <xtophe at videolan.org>
Date:   Wed Feb 10 11:02:39 2010 +0100

    Imported Upstream version 2010.02.10

diff --git a/BasicUsageEnvironment/include/BasicUsageEnvironment_version.hh b/BasicUsageEnvironment/include/BasicUsageEnvironment_version.hh
index dcf7be9..a6fe223 100644
--- a/BasicUsageEnvironment/include/BasicUsageEnvironment_version.hh
+++ b/BasicUsageEnvironment/include/BasicUsageEnvironment_version.hh
@@ -4,7 +4,7 @@
 #ifndef _BASICUSAGEENVIRONMENT_VERSION_HH
 #define _BASICUSAGEENVIRONMENT_VERSION_HH
 
-#define BASICUSAGEENVIRONMENT_LIBRARY_VERSION_STRING	"2010.01.22"
-#define BASICUSAGEENVIRONMENT_LIBRARY_VERSION_INT		1264118400
+#define BASICUSAGEENVIRONMENT_LIBRARY_VERSION_STRING	"2010.02.10"
+#define BASICUSAGEENVIRONMENT_LIBRARY_VERSION_INT		1265760000
 
 #endif
diff --git a/UsageEnvironment/include/UsageEnvironment_version.hh b/UsageEnvironment/include/UsageEnvironment_version.hh
index 68703d0..bc46ed9 100644
--- a/UsageEnvironment/include/UsageEnvironment_version.hh
+++ b/UsageEnvironment/include/UsageEnvironment_version.hh
@@ -4,7 +4,7 @@
 #ifndef _USAGEENVIRONMENT_VERSION_HH
 #define _USAGEENVIRONMENT_VERSION_HH
 
-#define USAGEENVIRONMENT_LIBRARY_VERSION_STRING	"2010.01.22"
-#define USAGEENVIRONMENT_LIBRARY_VERSION_INT		1264118400
+#define USAGEENVIRONMENT_LIBRARY_VERSION_STRING	"2010.02.10"
+#define USAGEENVIRONMENT_LIBRARY_VERSION_INT		1265760000
 
 #endif
diff --git a/groupsock/GroupsockHelper.cpp b/groupsock/GroupsockHelper.cpp
index 42e8e6d..6deaadc 100644
--- a/groupsock/GroupsockHelper.cpp
+++ b/groupsock/GroupsockHelper.cpp
@@ -141,6 +141,19 @@ Boolean makeSocketNonBlocking(int sock) {
 #endif
 }
 
+Boolean makeSocketBlocking(int sock) {
+#if defined(__WIN32__) || defined(_WIN32) || defined(IMN_PIM)
+  unsigned long arg = 0;
+  return ioctlsocket(sock, FIONBIO, &arg) == 0;
+#elif defined(VXWORKS)
+  int arg = 0;
+  return ioctl(sock, FIONBIO, (int)&arg) == 0;
+#else
+  int curFlags = fcntl(sock, F_GETFL, 0);
+  return fcntl(sock, F_SETFL, curFlags&(~O_NONBLOCK)) >= 0;
+#endif
+}
+
 int setupStreamSocket(UsageEnvironment& env,
                       Port port, Boolean makeNonBlocking) {
   if (!initializeWinsockIfNecessary()) {
diff --git a/groupsock/include/GroupsockHelper.hh b/groupsock/include/GroupsockHelper.hh
index 40b9755..b1501ca 100644
--- a/groupsock/include/GroupsockHelper.hh
+++ b/groupsock/include/GroupsockHelper.hh
@@ -58,6 +58,7 @@ unsigned increaseReceiveBufferTo(UsageEnvironment& env,
 				 int socket, unsigned requestedSize);
 
 Boolean makeSocketNonBlocking(int sock);
+Boolean makeSocketBlocking(int sock);
 
 Boolean socketJoinGroup(UsageEnvironment& env, int socket,
 			netAddressBits groupAddress);
diff --git a/groupsock/include/groupsock_version.hh b/groupsock/include/groupsock_version.hh
index 50e0947..857f734 100644
--- a/groupsock/include/groupsock_version.hh
+++ b/groupsock/include/groupsock_version.hh
@@ -4,7 +4,7 @@
 #ifndef _GROUPSOCK_VERSION_HH
 #define _GROUPSOCK_VERSION_HH
 
-#define GROUPSOCK_LIBRARY_VERSION_STRING	"2010.01.22"
-#define GROUPSOCK_LIBRARY_VERSION_INT		1264118400
+#define GROUPSOCK_LIBRARY_VERSION_STRING	"2010.02.10"
+#define GROUPSOCK_LIBRARY_VERSION_INT		1265760000
 
 #endif
diff --git a/liveMedia/MediaSession.cpp b/liveMedia/MediaSession.cpp
index c5a71e5..955ca9a 100644
--- a/liveMedia/MediaSession.cpp
+++ b/liveMedia/MediaSession.cpp
@@ -287,7 +287,7 @@ Boolean MediaSession::parseSDPLine(char const* inputLine,
 static char* parseCLine(char const* sdpLine) {
   char* resultStr = NULL;
   char* buffer = strDupSize(sdpLine); // ensures we have enough space
-  if (sscanf(sdpLine, "c=IN IP4 %[^/ ]", buffer) == 1) {
+  if (sscanf(sdpLine, "c=IN IP4 %[^/\r\n]", buffer) == 1) {
     // Later, handle the optional /<ttl> and /<numAddresses> #####
     resultStr = strDup(buffer);
   }
diff --git a/liveMedia/RTSPClient.cpp b/liveMedia/RTSPClient.cpp
index a1445c2..99cc7b1 100644
--- a/liveMedia/RTSPClient.cpp
+++ b/liveMedia/RTSPClient.cpp
@@ -982,7 +982,7 @@ Boolean RTSPClient::setupMediaSubsession(MediaSubsession& subsession,
     // If we saw a "Content-Length:" header in the response, then discard whatever
     // included data it refers to:
     if (cLength > 0) {
-      char* dummyBuf = new char[cLength];
+      char* dummyBuf = new char[cLength+1]; // allow for a trailing '\0'
       getResponse1(dummyBuf, cLength);
       delete[] dummyBuf;
     }
@@ -1812,52 +1812,42 @@ Boolean RTSPClient
       fInputSocketNum = fOutputSocketNum
 	= setupStreamSocket(envir(), 0, False /* =>blocking */);
       if (fInputSocketNum < 0) break;
-
+      
       // Connect to the remote endpoint:
       fServerAddress = *(unsigned*)(destAddress.data());
       MAKE_SOCKADDR_IN(remoteName, fServerAddress, htons(destPortNum));
-      //Start change for timeout on connect
-
-/*
-      if (connect(fInputSocketNum, (struct sockaddr*)&remoteName, sizeof remoteName)
-	  != 0) {
-	envir().setResultErrMsg("connect() failed: ");
-	break;
-*/
       fd_set set;
       FD_ZERO(&set);
       timeval tvout = {0,0};
+      
+      // If we were supplied with a timeout, make our socket temporarily non-blocking
       if (timeout > 0) {
-        FD_SET((unsigned)fInputSocketNum, &set);
-        tvout.tv_sec = timeout;
-        tvout.tv_usec = 0;
-        makeSocketNonBlocking(fInputSocketNum);
+	FD_SET((unsigned)fInputSocketNum, &set);
+	tvout.tv_sec = timeout;
+	tvout.tv_usec = 0;
+	makeSocketNonBlocking(fInputSocketNum);
       }
       if (connect(fInputSocketNum, (struct sockaddr*) &remoteName, sizeof remoteName) != 0) {
-        if (envir().getErrno() != EINPROGRESS && envir().getErrno() != EWOULDBLOCK) {
-          envir().setResultErrMsg("connect() failed: ");
-          break;
-        }
+	if (envir().getErrno() != EINPROGRESS && envir().getErrno() != EWOULDBLOCK) {
+	  envir().setResultErrMsg("connect() failed: ");
+	  break;
+	}
 	if (timeout > 0 && (select(fInputSocketNum + 1, NULL, &set, NULL, &tvout) <= 0)) {
-          envir().setResultErrMsg("select/connect() failed: ");
-          break;
-        }
-/*
-errno = 0;
-if (getsockopt(fd, SOL_SOCKET, SO_ERROR, &err, &len) < 0 || errno != 0 )
-{
-break;
-}
-*/
-      //End change for timeout on connect
+	  envir().setResultErrMsg("select/connect() failed: ");
+	  break;
+	}
       }
-
+      // If we set our socket to non-blocking, put it back in blocking mode now.
+      if (timeout > 0) {
+	makeSocketBlocking(fInputSocketNum);
+      }
+      
       if (fTunnelOverHTTPPortNum != 0 && !setupHTTPTunneling(urlSuffix, authenticator)) break;
     }
-
+    
     return True;
   } while (0);
-
+  
   fDescribeStatusCode = 1;
   resetTCPSockets();
   return False;
diff --git a/liveMedia/include/liveMedia_version.hh b/liveMedia/include/liveMedia_version.hh
index f3a9c84..e10703f 100644
--- a/liveMedia/include/liveMedia_version.hh
+++ b/liveMedia/include/liveMedia_version.hh
@@ -4,7 +4,7 @@
 #ifndef _LIVEMEDIA_VERSION_HH
 #define _LIVEMEDIA_VERSION_HH
 
-#define LIVEMEDIA_LIBRARY_VERSION_STRING	"2010.01.22"
-#define LIVEMEDIA_LIBRARY_VERSION_INT		1264118400
+#define LIVEMEDIA_LIBRARY_VERSION_STRING	"2010.02.10"
+#define LIVEMEDIA_LIBRARY_VERSION_INT		1265760000
 
 #endif

-- 
liblivemedia packaging



More information about the pkg-multimedia-commits mailing list