[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