]> git.sesse.net Git - vlc/commitdiff
MMS: add an error message if UTF-16 conversion fails
authorRafaël Carré <funman@videolan.org>
Sat, 3 Mar 2012 00:08:48 +0000 (19:08 -0500)
committerRafaël Carré <funman@videolan.org>
Sat, 3 Mar 2012 00:08:48 +0000 (19:08 -0500)
Server rejects connection if some field are not set properly

modules/access/mms/buffer.c
modules/access/mms/buffer.h
modules/access/mms/mmstu.c

index b1e874704e2db00e131730fb620f00e2675cf313..4268750fb8b9008b96aa8f5d7cfcfae6fcd61a6d 100644 (file)
@@ -30,6 +30,7 @@
 #endif
 
 #include <vlc_common.h>
+#include <vlc_access.h>
 #include <vlc_charset.h>
 
 #include "asf.h"
@@ -106,7 +107,7 @@ void var_buffer_addmemory( var_buffer_t *p_buf, void *p_mem, int i_mem )
     p_buf->i_data += i_mem;
 }
 
-void var_buffer_addUTF16( var_buffer_t *p_buf, const char *p_str )
+void var_buffer_addUTF16( access_t  *p_access, var_buffer_t *p_buf, const char *p_str )
 {
     uint16_t *p_out;
     size_t i_out;
@@ -120,7 +121,10 @@ void var_buffer_addUTF16( var_buffer_t *p_buf, const char *p_str )
     else
         p_out = NULL;
     if( p_out == NULL )
+    {
+        msg_Err( p_access, "UTF-16 conversion failed" );
         i_out = 0;
+    }
 
     i_out /= 2;
     for( size_t i = 0; i < i_out; i ++ )
index e969fe37a7b9490b97e87bf68b8782e3fc908e05..d1419050948121747c2a4a70f60b190b452310ab 100644 (file)
@@ -43,7 +43,7 @@ void var_buffer_add16( var_buffer_t *p_buf, uint16_t i_word );
 void var_buffer_add32( var_buffer_t *p_buf, uint32_t i_word );
 void var_buffer_add64( var_buffer_t *p_buf, uint64_t i_word );
 void var_buffer_addmemory( var_buffer_t *p_buf, void *p_mem, int i_mem );
-void var_buffer_addUTF16( var_buffer_t *p_buf, const char *p_str );
+void var_buffer_addUTF16( access_t  *p_access, var_buffer_t *p_buf, const char *p_str );
 void var_buffer_free( var_buffer_t *p_buf );
 
 
index b74be96571b62d6d9b8adae96533400f17b2a8b4..ac642011a7ffe3467869c818a656676337594415 100644 (file)
@@ -536,7 +536,7 @@ static int MMSOpen( access_t  *p_access, vlc_url_t *p_url, int  i_proto )
              "NSPlayer/7.0.0.1956; {"GUID_FMT"}; Host: %s",
              GUID_PRINT( p_sys->guid ),
              p_url->psz_host );
-    var_buffer_addUTF16( &buffer, tmp );
+    var_buffer_addUTF16( p_access, &buffer, tmp );
 
     mms_CommandSend( p_access,
                      0x01,          /* connexion request */
@@ -598,7 +598,7 @@ static int MMSOpen( access_t  *p_access, vlc_url_t *p_url, int  i_proto )
     {
         sprintf( tmp, "\\\\192.168.0.1\\TCP\\1242"  );
     }
-    var_buffer_addUTF16( &buffer, tmp );
+    var_buffer_addUTF16( p_access, &buffer, tmp );
     var_buffer_add16( &buffer, '0' );
 
     mms_CommandSend( p_access,
@@ -633,7 +633,7 @@ static int MMSOpen( access_t  *p_access, vlc_url_t *p_url, int  i_proto )
     {
         mediapath++;
     }
-    var_buffer_addUTF16( &buffer, mediapath );
+    var_buffer_addUTF16( p_access, &buffer, mediapath );
 
     mms_CommandSend( p_access,
                      0x05,