]> git.sesse.net Git - vlc/blobdiff - modules/control/http/rpn.c
UPNP: Document some functions and prettify existing documentation.
[vlc] / modules / control / http / rpn.c
index e58bcf560ef2a820f9103735dbf6fef970198423..af67c67748a46e3bc2c9d69c3ebe28d904357219 100644 (file)
@@ -27,9 +27,9 @@
 #endif
 
 #include "http.h"
-#include "vlc_url.h"
-#include "vlc_meta.h"
-#include "vlc_strings.h"
+#include <vlc_url.h>
+#include <vlc_meta.h>
+#include <vlc_strings.h>
 
 static vlc_object_t *GetVLCObject( intf_thread_t *p_intf,
                                    const char *psz_object,
@@ -164,7 +164,7 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
         /* 1. Integer function */
         if( !strcmp( s, "!" ) )
         {
-            SSPushN( st, ~SSPopN( st, vars ) );
+            SSPushN( st, !SSPopN( st, vars ) );
         }
         else if( !strcmp( s, "^" ) )
         {
@@ -360,12 +360,13 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
         else if( !strcmp( s, "url_encode" ) )
         {
             char *url = SSPop( st );
-            char *value = vlc_UrlEncode( url );
+            char *value = encode_URI_component( url );
             free( url );
             SSPush( st, value );
             free( value );
         }
-        else if( !strcmp( s, "xml_encode" ) )
+        else if( !strcmp( s, "xml_encode" )
+              || !strcmp( s, "htmlspecialchars" ) )
         {
             char *url = SSPop( st );
             char *value = convert_xml_special_chars( url );
@@ -418,17 +419,6 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
             free( psz_src );
             free( psz_dest );
         }
-        else if( !strcmp( s, "htmlspecialchars" ) )
-        {
-            char *psz_src = SSPop( st );
-            char *psz_dest;
-
-            psz_dest = convert_xml_special_chars( psz_src );
-
-            SSPush( st, psz_dest );
-            free( psz_src );
-            free( psz_dest );
-        }
         else if( !strcmp( s, "realpath" ) )
         {
             char *psz_src = SSPop( st );
@@ -572,15 +562,6 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
                 case VLC_VAR_STRING:
                     psz_type = "VLC_VAR_STRING";
                     break;
-                case VLC_VAR_MODULE:
-                    psz_type = "VLC_VAR_MODULE";
-                    break;
-                case VLC_VAR_FILE:
-                    psz_type = "VLC_VAR_FILE";
-                    break;
-                case VLC_VAR_DIRECTORY:
-                    psz_type = "VLC_VAR_DIRECTORY";
-                    break;
                 case VLC_VAR_VARIABLE:
                     psz_type = "VLC_VAR_VARIABLE";
                     break;
@@ -624,13 +605,10 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
                 case VLC_VAR_INTEGER:
                 case VLC_VAR_HOTKEY:
                     val.i_int = SSPopN( st, vars );
-                    msg_Dbg( p_intf, "requested %s var change: %s->%d",
+                    msg_Dbg( p_intf, "requested %s var change: %s->%"PRIu64,
                              psz_object, psz_variable, val.i_int );
                     break;
                 case VLC_VAR_STRING:
-                case VLC_VAR_MODULE:
-                case VLC_VAR_FILE:
-                case VLC_VAR_DIRECTORY:
                 case VLC_VAR_VARIABLE:
                     val.psz_string = psz_value = SSPop( st );
                     msg_Dbg( p_intf, "requested %s var change: %s->%s",
@@ -651,8 +629,7 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
 
                 if( !b_error )
                     var_Set( p_object, psz_variable, val );
-                if( psz_value != NULL )
-                    free( psz_value );
+                free( psz_value );
             }
             else
                 msg_Warn( p_intf, "vlc_var_set called without an object" );
@@ -689,9 +666,6 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
                     SSPushN( st, val.i_int );
                     break;
                 case VLC_VAR_STRING:
-                case VLC_VAR_MODULE:
-                case VLC_VAR_FILE:
-                case VLC_VAR_DIRECTORY:
                 case VLC_VAR_VARIABLE:
                     SSPush( st, val.psz_string );
                     free( val.psz_string );
@@ -749,9 +723,6 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
                 config_PutInt( p_intf, psz_variable, SSPopN( st, vars ) );
                 break;
             case VLC_VAR_STRING:
-            case VLC_VAR_MODULE:
-            case VLC_VAR_FILE:
-            case VLC_VAR_DIRECTORY:
             {
                 char *psz_string = SSPop( st );
                 config_PutPsz( p_intf, psz_variable, psz_string );
@@ -783,9 +754,6 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
                 SSPushN( st, config_GetInt( p_intf, psz_variable ) );
                 break;
             case VLC_VAR_STRING:
-            case VLC_VAR_MODULE:
-            case VLC_VAR_FILE:
-            case VLC_VAR_DIRECTORY:
             {
                 char *psz_string = config_GetPsz( p_intf, psz_variable );
                 SSPush( st, psz_string );
@@ -821,8 +789,7 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
             }
             i_result = config_SaveConfigFile( p_intf, psz_module );
 
-            if( psz_module != NULL )
-                free( psz_module );
+            free( psz_module );
             SSPushN( st, i_result );
         }
         else if( !strcmp( s, "vlc_config_reset" ) )
@@ -854,11 +821,12 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
                 {
                     playlist_item_t *p_item;
                     msg_Dbg( p_intf, "requested mrl add: %s", mrl );
+                    playlist_Lock( p_sys->p_playlist );
                     p_item = playlist_ItemGetByInput( p_sys->p_playlist,
-                                                      p_input,
-                                                      pl_Unlocked );
+                                                      p_input );
                     if( p_item )
                         i_ret = p_item->i_id;
+                    playlist_Unlock( p_sys->p_playlist );
                 }
                 else
                     msg_Warn( p_intf, "adding mrl %s failed", mrl );
@@ -884,7 +852,7 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
             if( p_item )
             {
                 playlist_DeleteFromInput( p_sys->p_playlist,
-                                          p_item->p_input->i_id, pl_Locked );
+                                          p_item->p_input, pl_Locked );
                 msg_Dbg( p_intf, "requested playlist delete: %d", i_id );
             }
             else
@@ -953,38 +921,38 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
             char *psz_vol = SSPop( st );
             int i_value;
             audio_volume_t i_volume;
-            aout_VolumeGet( p_intf, &i_volume );
+            i_volume = aout_VolumeGet( p_sys->p_playlist );
             if( psz_vol[0] == '+' )
             {
                 i_value = atoi( psz_vol );
                 if( (i_volume + i_value) > AOUT_VOLUME_MAX )
-                    aout_VolumeSet( p_intf, AOUT_VOLUME_MAX );
+                    aout_VolumeSet( p_sys->p_playlist, AOUT_VOLUME_MAX );
                 else
-                    aout_VolumeSet( p_intf, i_volume + i_value );
+                    aout_VolumeSet( p_sys->p_playlist, i_volume + i_value );
             }
             else if( psz_vol[0] == '-' )
             {
                 i_value = atoi( psz_vol );
                 if( (i_volume + i_value) < AOUT_VOLUME_MIN )
-                    aout_VolumeSet( p_intf, AOUT_VOLUME_MIN );
+                    aout_VolumeSet( p_sys->p_playlist, AOUT_VOLUME_MIN );
                 else
-                    aout_VolumeSet( p_intf, i_volume + i_value );
+                    aout_VolumeSet( p_sys->p_playlist, i_volume + i_value );
             }
             else if( strstr( psz_vol, "%") != NULL )
             {
                 i_value = atoi( psz_vol );
                 if( i_value < 0 ) i_value = 0;
                 if( i_value > 400 ) i_value = 400;
-                aout_VolumeSet( p_intf, (i_value * (AOUT_VOLUME_MAX - AOUT_VOLUME_MIN))/400+AOUT_VOLUME_MIN);
+                aout_VolumeSet( p_sys->p_playlist, (i_value * (AOUT_VOLUME_MAX - AOUT_VOLUME_MIN))/400+AOUT_VOLUME_MIN);
             }
             else
             {
                 i_value = atoi( psz_vol );
                 if( i_value > AOUT_VOLUME_MAX ) i_value = AOUT_VOLUME_MAX;
                 if( i_value < AOUT_VOLUME_MIN ) i_value = AOUT_VOLUME_MIN;
-                aout_VolumeSet( p_intf, i_value );
+                aout_VolumeSet( p_sys->p_playlist, i_value );
             }
-            aout_VolumeGet( p_intf, &i_volume );
+            i_volume = aout_VolumeGet( p_sys->p_playlist );
             free( psz_vol );
         }
         else if( !strcmp( s, "vlc_get_meta" ) )
@@ -1124,7 +1092,7 @@ void EvaluateRPN( intf_thread_t *p_intf, mvar_t  *vars,
                 vout_thread_t *p_vout = input_GetVout( p_sys->p_input );
                 if( p_vout )
                 {
-                    vout_Control( p_vout, VOUT_SNAPSHOT );
+                    var_TriggerCallback( p_vout, "video-snapshot" );
                     vlc_object_release( p_vout );
                     msg_Dbg( p_intf, "requested snapshot" );
                 }