mmsh: move location storage into context
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 31 Oct 2011 19:45:12 +0000 (20:45 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 31 Oct 2011 19:45:12 +0000 (20:45 +0100)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/mmsh.c

index 029baed..b63ad02 100644 (file)
@@ -55,6 +55,7 @@ typedef enum {
 
 typedef struct {
     MMSContext mms;
+    uint8_t location[1024];
     int request_seq;  ///< request packet sequence
     int chunk_seq;    ///< data packet sequence
 } MMSHContext;
@@ -213,7 +214,7 @@ static int get_http_header_data(MMSHContext *mmsh)
 static int mmsh_open(URLContext *h, const char *uri, int flags)
 {
     int i, port, err;
-    char httpname[256], path[256], host[128], location[1024];
+    char httpname[256], path[256], host[128];
     char *stream_selection = NULL;
     char headers[1024];
     MMSHContext *mmsh;
@@ -224,10 +225,10 @@ static int mmsh_open(URLContext *h, const char *uri, int flags)
         return AVERROR(ENOMEM);
     mmsh->request_seq = h->is_streamed = 1;
     mms = &mmsh->mms;
-    av_strlcpy(location, uri, sizeof(location));
+    av_strlcpy(mmsh->location, uri, sizeof(mmsh->location));
 
     av_url_split(NULL, 0, NULL, 0,
-        host, sizeof(host), &port, path, sizeof(path), location);
+        host, sizeof(host), &port, path, sizeof(path), mmsh->location);
     if (port<0)
         port = 80; // default mmsh protocol port
     ff_url_join(httpname, sizeof(httpname), "http", NULL, host, port, "%s", path);