32 #include "YCommandLine.h"
33 #include "YUIException.h"
35 #define YUILogComponent "ui"
43 std::vector<string> args;
53 YUI_CHECK_NEW( priv );
55 std::ifstream cmdline(
"/proc/self/cmdline", std::ifstream::in | std::ifstream::binary );
57 while ( cmdline.good() )
60 getline( cmdline,
arg,
'\0' );
64 yuiDebug() <<
"Arg #" << priv->args.size()
65 <<
": \"" <<
arg <<
"\"" << endl;
67 priv->args.push_back(
arg );
82 return priv->args.size();
89 char ** argArray = (
char **) ( malloc(
argc() *
sizeof(
char * ) ) );
93 for (
int i=0; i <
argc(); i++ )
95 argArray[ i ] = strdup( priv->args[i].c_str() );
106 priv->args.push_back(
arg );
113 YUI_CHECK_INDEX( index, 0, (
int) priv->args.size()-1 );
115 return priv->args[ index ];
122 YUI_CHECK_INDEX( index, 0, (
int) priv->args.size()-1 );
124 priv->args.erase( priv->args.begin() + index );
131 YUI_CHECK_INDEX( index, 0, (
int) priv->args.size()-1 );
133 priv->args[ index ] = newArg;
140 for (
int i=0; i <
argc(); i++ )
142 if ( priv->args[i] == argName )