1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-24 15:52:25 +00:00

Get rid of the "set" member of the subopt-parser struct, it made

it impossible to make the those struct variables const.
Also it is not really useful, and wastes space.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28862 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
reimar 2009-03-06 20:41:02 +00:00
parent 6cf4aafa36
commit 7e253f0171
2 changed files with 4 additions and 14 deletions

View File

@ -45,18 +45,11 @@ static char const * parse_float( char const * const str, float * const valp );
* else a non-zero value is returned.
*
*/
int subopt_parse( char const * const str, opt_t * opts )
int subopt_parse( char const * const str, const opt_t * opts )
{
int parse_err = 0, idx;
unsigned int parse_pos = 0;
/* Initialize set member to false. *
* It is set to true if it was found in str */
for ( idx=0; opts[idx].name; ++idx )
{
opts[idx].set = 0;
}
if ( str )
{
while ( str[parse_pos] && !parse_err )
@ -101,7 +94,7 @@ int subopt_parse( char const * const str, opt_t * opts )
if( strncmp( &str[parse_pos], opts[idx].name, opt_len ) == 0 )
{
/* option was found */
opts[idx].set = 1; next = 1;
next = 1;
assert( opts[idx].valp && "Need a pointer to store the arg!" );
@ -196,7 +189,7 @@ else if ( substr_len == opt_len+2 )
strncmp( &str[parse_pos+2], opts[idx].name, opt_len ) == 0 )
{
/* option was found but negated */
opts[idx].set = 1; next = 1;
next = 1;
/* set arg to false */
*((int *)(opts[idx].valp)) = 0;

View File

@ -24,13 +24,10 @@ typedef struct opt_s
int type; ///< option type as defined in subopt-helper.h
void * valp; ///< pointer to the mem where the value should be stored
opt_test_f test; ///< argument test func ( optional )
int set; ///< Is set internally by the parser if the option was found.
///< Don't use it at initialization of your opts, it will be
///< overriden anyway!
} opt_t;
/** parses the string for the options specified in opt */
int subopt_parse( char const * const str, opt_t * opts );
int subopt_parse( char const * const str, const opt_t * opts );
/*------------------ arg specific types and declaration -------------------*/