changeset 30695:a26f6577d338

Make more option-parsing related function arguments const. Prerequisite for making stream_open filename const in a proper way.
author reimar
date Thu, 25 Feb 2010 22:32:28 +0000
parents 9be8d71ca9a5
children 71c816ff3ab4
files m_config.c m_option.c m_option.h m_struct.c m_struct.h
diffstat 5 files changed, 46 insertions(+), 46 deletions(-) [+]
line wrap: on
line diff
--- a/m_config.c	Thu Feb 25 22:29:00 2010 +0000
+++ b/m_config.c	Thu Feb 25 22:32:28 2010 +0000
@@ -37,10 +37,10 @@
 #define MAX_PROFILE_DEPTH 20
 
 static int
-parse_profile(const m_option_t *opt, const char *name, char *param, void *dst, int src);
+parse_profile(const m_option_t *opt, const char *name, const char *param, void *dst, int src);
 
 static void
-set_profile(const m_option_t *opt, void* dst, void* src);
+set_profile(const m_option_t *opt, void* dst, const void* src);
 
 static int
 show_profile(m_option_t *opt, char* name, char *param);
@@ -515,7 +515,7 @@
 }
 
 static int
-parse_profile(const m_option_t *opt, const char *name, char *param, void *dst, int src)
+parse_profile(const m_option_t *opt, const char *name, const char *param, void *dst, int src)
 {
   m_config_t* config = opt->priv;
   char** list = NULL;
@@ -551,7 +551,7 @@
 }
 
 static void
-set_profile(const m_option_t *opt, void *dst, void *src) {
+set_profile(const m_option_t *opt, void *dst, const void *src) {
   m_config_t* config = opt->priv;
   m_profile_t* p;
   char** list = NULL;
--- a/m_option.c	Thu Feb 25 22:29:00 2010 +0000
+++ b/m_option.c	Thu Feb 25 22:32:28 2010 +0000
@@ -57,7 +57,7 @@
 
 // Default function that just does a memcpy
 
-static void copy_opt(const m_option_t* opt,void* dst,void* src) {
+static void copy_opt(const m_option_t* opt,void* dst,const void* src) {
   if(dst && src)
     memcpy(dst,src,opt->type->size);
 }
@@ -93,7 +93,7 @@
 
 #define VAL(x) (*(int*)(x))
 
-static int parse_flag(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_flag(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   if (src == M_CONFIG_FILE) {
     if(!param) return M_OPT_MISSING_PARAM;
     if (!strcasecmp(param, "yes") ||	/* any other language? */
@@ -153,7 +153,7 @@
 
 // Integer
 
-static int parse_int(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_int(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   long long tmp_int;
   char *endptr;
   src = 0;
@@ -226,7 +226,7 @@
 #undef VAL
 #define VAL(x) (*(double*)(x))
 
-static int parse_double(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_double(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   double tmp_float;
   char* endptr;
   src = 0;
@@ -296,7 +296,7 @@
 #undef VAL
 #define VAL(x) (*(float*)(x))
 
-static int parse_float(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_float(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
     double tmp;
     int r= parse_double(opt, name, param, &tmp, src);
     if(r==1 && dst) VAL(dst) = tmp;
@@ -325,7 +325,7 @@
 #undef VAL
 #define VAL(x) (*(off_t*)(x))
 
-static int parse_position(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_position(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   off_t tmp_off;
   char dummy;
 
@@ -381,7 +381,7 @@
 #undef VAL
 #define VAL(x) (*(char**)(x))
 
-static int parse_str(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_str(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
 
 
   if (param == NULL)
@@ -413,7 +413,7 @@
   return (val && VAL(val) && strlen(VAL(val)) > 0) ? strdup(VAL(val)) : NULL;
 }
 
-static void copy_str(const m_option_t* opt,void* dst, void* src) {
+static void copy_str(const m_option_t* opt,void* dst, const void* src) {
   if(dst && src) {
 #ifndef NO_FREE
     if(VAL(dst)) free(VAL(dst)); //FIXME!!!
@@ -561,10 +561,10 @@
     return ptr;
 }
 
-static int parse_str_list(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_str_list(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   int n = 0,len = strlen(opt->name);
   char *str;
-  char *ptr = param, *last_ptr, **res;
+  char *ptr = (char *)param, *last_ptr, **res;
   int op = OP_NONE;
 
   if(opt->name[len-1] == '*' && ((int)strlen(name) > len - 1)) {
@@ -648,7 +648,7 @@
   return 1;
 }
 
-static void copy_str_list(const m_option_t* opt,void* dst, void* src) {
+static void copy_str_list(const m_option_t* opt,void* dst, const void* src) {
   int n;
   char **d,**s;
 
@@ -743,7 +743,7 @@
 }
 
 // Parser for func_param and func_full
-static int parse_func_pf(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_func_pf(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   m_func_save_t *s,*p;
 
   if(!dst)
@@ -764,7 +764,7 @@
   return 1;
 }
 
-static void copy_func_pf(const m_option_t* opt,void* dst, void* src) {
+static void copy_func_pf(const m_option_t* opt,void* dst, const void* src) {
   m_func_save_t *d = NULL, *s,* last = NULL;
 
   if(!(dst && src)) return;
@@ -790,7 +790,7 @@
 
 /////////////////// Func_param
 
-static void set_func_param(const m_option_t* opt, void* dst, void* src) {
+static void set_func_param(const m_option_t* opt, void* dst, const void* src) {
   m_func_save_t* s;
 
   if(!src) return;
@@ -819,7 +819,7 @@
 
 /////////////////// Func_full
 
-static void set_func_full(const m_option_t* opt, void* dst, void* src) {
+static void set_func_full(const m_option_t* opt, void* dst, const void* src) {
   m_func_save_t* s;
 
   if(!src) return;
@@ -849,13 +849,13 @@
 #undef VAL
 #define VAL(x) (*(int*)(x))
 
-static int parse_func(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_func(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   if(dst)
     VAL(dst) += 1;
   return 0;
 }
 
-static void set_func(const m_option_t* opt,void* dst, void* src) {
+static void set_func(const m_option_t* opt,void* dst, const void* src) {
   int i;
   if(opt->priv) ((m_opt_default_func_t)opt->priv)(opt,opt->name);
   for(i = 0 ; i < VAL(src) ; i++)
@@ -877,7 +877,7 @@
 
 /////////////////// Print
 
-static int parse_print(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_print(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   if(opt->type == CONF_TYPE_PRINT_INDIRECT)
     mp_msg(MSGT_CFGPARSER, MSGL_INFO, "%s", *(char **) opt->p);
   else if(opt->type == CONF_TYPE_PRINT_FUNC)
@@ -934,7 +934,7 @@
 #undef VAL
 #define VAL(x) (*(char***)(x))
 
-static int parse_subconf(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_subconf(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   char *subparam;
   char *subopt;
   int nr = 0,i,r;
@@ -1104,7 +1104,7 @@
   { NULL, 0 }
 };
 
-static int parse_imgfmt(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_imgfmt(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   uint32_t fmt = 0;
   int i;
 
@@ -1194,7 +1194,7 @@
   { NULL, 0 }
 };
 
-static int parse_afmt(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_afmt(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   uint32_t fmt = 0;
   int i;
 
@@ -1257,7 +1257,7 @@
 }
 
 
-static int parse_time(const m_option_t* opt,const char *name, char *param, void* dst, int src)
+static int parse_time(const m_option_t* opt,const char *name, const char *param, void* dst, int src)
 {
   double time;
 
@@ -1292,7 +1292,7 @@
 
 // Time or size (-endpos)
 
-static int parse_time_size(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+static int parse_time_size(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   m_time_size_t ts;
   char unit[4];
   double end_at;
@@ -1523,7 +1523,7 @@
 }
 
 static int parse_obj_params(const m_option_t* opt,const char *name,
-			    char *param, void* dst, int src) {
+			    const char *param, void* dst, int src) {
   char** opts;
   int r;
   m_obj_params_t* p = opt->priv;
@@ -1637,7 +1637,7 @@
 
 static void free_obj_settings_list(void* dst);
 
-static int obj_settings_list_del(const char *opt_name,char *param,void* dst, int src) {
+static int obj_settings_list_del(const char *opt_name,const char *param,void* dst, int src) {
   char** str_list = NULL;
   int r,i,idx_max = 0;
   char* rem_id = "_removed_marker_";
@@ -1696,7 +1696,7 @@
 }
 
 static int parse_obj_settings_list(const m_option_t* opt,const char *name,
-				   char *param, void* dst, int src) {
+				   const char *param, void* dst, int src) {
   int n = 0,r,len = strlen(opt->name);
   char *str;
   char *ptr, *last_ptr;
@@ -1849,7 +1849,7 @@
   VAL(dst) = NULL;
 }
 
-static void copy_obj_settings_list(const m_option_t* opt,void* dst, void* src) {
+static void copy_obj_settings_list(const m_option_t* opt,void* dst, const void* src) {
   m_obj_settings_t *d,*s;
   int n;
 
@@ -1893,7 +1893,7 @@
 
 
 static int parse_obj_presets(const m_option_t* opt,const char *name,
-			    char *param, void* dst, int src) {
+			    const char *param, void* dst, int src) {
   m_obj_presets_t* obj_p = (m_obj_presets_t*)opt->priv;
   m_struct_t *in_desc,*out_desc;
   int s,i;
@@ -1965,7 +1965,7 @@
 };
 
 static int parse_custom_url(const m_option_t* opt,const char *name,
-			    char *url, void* dst, int src) {
+			    const char *url, void* dst, int src) {
   int pos1, pos2, r, v6addr = 0;
   char *ptr1=NULL, *ptr2=NULL, *ptr3=NULL, *ptr4=NULL;
   m_struct_t* desc = opt->priv;
--- a/m_option.h	Thu Feb 25 22:29:00 2010 +0000
+++ b/m_option.h	Thu Feb 25 22:32:28 2010 +0000
@@ -68,7 +68,7 @@
 typedef void (*m_opt_default_func_t)(const m_option_t *, const char*);
 
 /// Callback used by m_option_type_func_full options.
-typedef int (*m_opt_func_full_t)(const m_option_t *, const char *, char *);
+typedef int (*m_opt_func_full_t)(const m_option_t *, const char *, const char *);
 
 /// Callback used by m_option_type_func_param options.
 typedef int (*m_opt_func_param_t)(const m_option_t *, const char *);
@@ -198,9 +198,9 @@
 
 /// Option type description
 struct m_option_type {
-  char* name;
+  const char* name;
   /// Syntax description, etc
-  char* comments;
+  const char* comments;
   /// Size needed for the data.
   unsigned int size;
   /// See \ref OptionTypeFlags.
@@ -218,7 +218,7 @@
    *  \return On error a negative value is returned, on success the number of arguments
    *          consumed. For details see \ref OptionParserReturn.
    */
-  int (*parse)(const m_option_t* opt,const char *name, char *param, void* dst, int src);
+  int (*parse)(const m_option_t* opt,const char *name, const char *param, void* dst, int src);
 
   /// Print back a value in string form.
   /** \param opt The option to print.
@@ -241,21 +241,21 @@
    *  \param dst Pointer to the destination memory.
    *  \param src Pointer to the source memory.
    */
-  void (*save)(const m_option_t* opt,void* dst, void* src);
+  void (*save)(const m_option_t* opt,void* dst, const void* src);
 
   /// Set the value in the program (dst) from a save slot.
   /** \param opt The option to copy.
    *  \param dst Pointer to the destination memory.
    *  \param src Pointer to the source memory.
    */
-  void (*set)(const m_option_t* opt,void* dst, void* src);
+  void (*set)(const m_option_t* opt,void* dst, const void* src);
 
   /// Copy the data between two save slots. If NULL and size is > 0 a memcpy will be used.
   /** \param opt The option to copy.
    *  \param dst Pointer to the destination memory.
    *  \param src Pointer to the source memory.
    */
-  void (*copy)(const m_option_t* opt,void* dst, void* src);
+  void (*copy)(const m_option_t* opt,void* dst, const void* src);
   //@}
 
   /// Free the data allocated for a save slot.
@@ -483,7 +483,7 @@
 
 /// Helper to parse options, see \ref m_option_type::parse.
 inline static int
-m_option_parse(const m_option_t* opt,const char *name, char *param, void* dst, int src) {
+m_option_parse(const m_option_t* opt,const char *name, const char *param, void* dst, int src) {
   return opt->type->parse(opt,name,param,dst,src);
 }
 
@@ -498,21 +498,21 @@
 
 /// Helper around \ref m_option_type::save.
 inline static  void
-m_option_save(const m_option_t* opt,void* dst, void* src) {
+m_option_save(const m_option_t* opt,void* dst, const void* src) {
   if(opt->type->save)
     opt->type->save(opt,dst,src);
 }
 
 /// Helper around \ref m_option_type::set.
 inline static  void
-m_option_set(const m_option_t* opt,void* dst, void* src) {
+m_option_set(const m_option_t* opt,void* dst, const void* src) {
   if(opt->type->set)
     opt->type->set(opt,dst,src);
 }
 
 /// Helper around \ref m_option_type::copy.
 inline  static void
-m_option_copy(const m_option_t* opt,void* dst, void* src) {
+m_option_copy(const m_option_t* opt,void* dst, const void* src) {
   if(opt->type->copy)
     opt->type->copy(opt,dst,src);
   else if(opt->type->size > 0)
--- a/m_struct.c	Thu Feb 25 22:29:00 2010 +0000
+++ b/m_struct.c	Thu Feb 25 22:32:28 2010 +0000
@@ -68,7 +68,7 @@
 }
 
 int
-m_struct_set(const m_struct_t* st, void* obj, char* field, char* param) {
+m_struct_set(const m_struct_t* st, void* obj, const char* field, const char* param) {
   const m_option_t* f = m_struct_get_field(st,field);
 
   if(!f) {
--- a/m_struct.h	Thu Feb 25 22:29:00 2010 +0000
+++ b/m_struct.h	Thu Feb 25 22:32:28 2010 +0000
@@ -88,7 +88,7 @@
  *  \return 0 on error, 1 on success.
  */
 int
-m_struct_set(const m_struct_t* st, void* obj, char* field, char* param);
+m_struct_set(const m_struct_t* st, void* obj, const char* field, const char* param);
 
 /// Reset a field (or all if field == NULL) to defaults.
 /** \param st Struct definition.