[Mplayer-cvslog] CVS: main/libmpdemux network.c,1.83,1.84

Bertrand Baudet bertrand at mplayerhq.hu
Sat Jun 21 18:47:54 CEST 2003


Update of /cvsroot/mplayer/main/libmpdemux
In directory mail:/var/tmp.root/cvs-serv1689

Modified Files:
	network.c 
Log Message:
Patch from Andreas Hess <jaska at gmx.net>:
rtsp://<host>/<file>:<port> is not a valid URL, but
rtsp://<host>:<port>/<file> is.


Index: network.c
===================================================================
RCS file: /cvsroot/mplayer/main/libmpdemux/network.c,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -r1.83 -r1.84
--- network.c	11 Jun 2003 16:48:07 -0000	1.83
+++ network.c	21 Jun 2003 16:47:31 -0000	1.84
@@ -948,36 +948,31 @@
 	char *mrl;
 	int port;
 	int redirected, temp;
-	char aport[10];
 	if( stream==NULL ) return -1;
 	
 	temp = 5; // counter so we don't get caught in infinite redirections (you never know)
 	
 	do {
 	
-	redirected = 0;
+		redirected = 0;
 
-	fd = connect2Server( stream->streaming_ctrl->url->hostname,
-		port = (stream->streaming_ctrl->url->port ? stream->streaming_ctrl->url->port : 554) );
-	printf("rtsp:// fd=%d\n",fd);
-	if(fd<0) return -1;
-	
-	sprintf(aport,"%d",port);
-	mrl = (char *)malloc(strlen(stream->streaming_ctrl->url->url)+1+10+1);
-	strcpy(mrl,stream->streaming_ctrl->url->url);
-	strcat(mrl,":");
-	strcat(mrl,aport);
-	rtsp = rtsp_session_start(fd,&mrl, stream->streaming_ctrl->url->file,
-		stream->streaming_ctrl->url->hostname, port, &redirected);
+		fd = connect2Server( stream->streaming_ctrl->url->hostname,
+			port = (stream->streaming_ctrl->url->port ? stream->streaming_ctrl->url->port : 554) );
+		if(fd<0) return -1;
+		
+		mrl = malloc(sizeof(char)*(strlen(stream->streaming_ctrl->url->hostname)+strlen(stream->streaming_ctrl->url->file)+16));
+		sprintf(mrl,"rtsp://%s:%i/%s",stream->streaming_ctrl->url->hostname,port,stream->streaming_ctrl->url->file);
+		rtsp = rtsp_session_start(fd,&mrl, stream->streaming_ctrl->url->file,
+			stream->streaming_ctrl->url->hostname, port, &redirected);
 
-	if ( redirected == 1 ) {
-		url_free(stream->streaming_ctrl->url);
-		stream->streaming_ctrl->url = url_new(mrl);
-		closesocket(fd);
-	}
+		if ( redirected == 1 ) {
+			url_free(stream->streaming_ctrl->url);
+			stream->streaming_ctrl->url = url_new(mrl);
+			closesocket(fd);
+		}
 
-	free(mrl);
-	temp--;
+		free(mrl);
+		temp--;
 
 	} while( (redirected != 0) && (temp > 0) );	
 



More information about the MPlayer-cvslog mailing list