VLC_COMMON_MEMBERS
/* Global properties */
- int i_argc; ///< command line arguments count
- const char ** ppsz_argv; ///< command line arguments
-
char * psz_homedir; ///< user's home directory
char * psz_configdir; ///< user's configuration directory
char * psz_datadir; ///< user's data directory
if( !p_vout->b_fullscreen )
{
+ const char *argv[] = { "vlc", NULL };
+
/* Set window manager hints and properties: size hints, command,
* window's name, and accepted protocols */
XSetWMNormalHints( p_vout->p_sys->p_display,
p_win->base_window, &xsize_hints );
XSetCommand( p_vout->p_sys->p_display, p_win->base_window,
- (char**)p_vout->p_libvlc->ppsz_argv,
- p_vout->p_libvlc->i_argc );
+ (char**)argv, 1 );
if( !var_GetBool( p_vout, "video-deco") )
{
vlc_list_t *p_list;
struct option *p_longopts;
int i_modules_index;
+ const char **argv_copy = NULL;
/* Short options */
module_config_t *pp_shortopts[256];
char *psz_shortopts;
- /* Set default configuration and copy arguments */
- p_this->p_libvlc->i_argc = *pi_argc;
- p_this->p_libvlc->ppsz_argv = ppsz_argv;
-
#ifdef __APPLE__
/* When VLC.app is run by double clicking in Mac OS X, the 2nd arg
* is the PSN - process serial number (a unique PID-ish thingie)
* us, ignoring the arity of the options */
if( b_ignore_errors )
{
- ppsz_argv = (const char**)malloc( *pi_argc * sizeof(char *) );
- if( ppsz_argv == NULL )
+ argv_copy = (const char**)malloc( *pi_argc * sizeof(char *) );
+ if( argv_copy == NULL )
{
msg_Err( p_this, "out of memory" );
free( psz_shortopts );
vlc_list_release( p_list );
return -1;
}
- memcpy( ppsz_argv, p_this->p_libvlc->ppsz_argv,
- *pi_argc * sizeof(char *) );
+ memcpy( argv_copy, ppsz_argv, *pi_argc * sizeof(char *) );
+ ppsz_argv = argv_copy;
}
i_shortopts = 0;
free( (char *)p_longopts[i_index].name );
free( p_longopts );
free( psz_shortopts );
- if( b_ignore_errors ) free( ppsz_argv );
+ free( argv_copy );
return 0;
}