Commit 4a286029 authored by Eugenio Jarosiewicz's avatar Eugenio Jarosiewicz

Forgot a little thing...main. Done for now I hope;-)

parent bd2926f7
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* and spawn threads. * and spawn threads.
***************************************************************************** *****************************************************************************
* Copyright (C) 1998, 1999, 2000 VideoLAN * Copyright (C) 1998, 1999, 2000 VideoLAN
* $Id: main.c,v 1.83 2001/04/11 02:01:24 henri Exp $ * $Id: main.c,v 1.84 2001/04/11 14:10:49 ej Exp $
* *
* Authors: Vincent Seguin <seguin@via.ecp.fr> * Authors: Vincent Seguin <seguin@via.ecp.fr>
* Samuel Hocevar <sam@zoy.org> * Samuel Hocevar <sam@zoy.org>
...@@ -182,7 +182,7 @@ main_t *p_main; ...@@ -182,7 +182,7 @@ main_t *p_main;
/***************************************************************************** /*****************************************************************************
* Local prototypes * Local prototypes
*****************************************************************************/ *****************************************************************************/
static int GetConfiguration ( int i_argc, char *ppsz_argv[], static int GetConfiguration ( int *i_argc, char *ppsz_argv[],
char *ppsz_env[] ); char *ppsz_env[] );
static int GetFilenames ( int i_argc, char *ppsz_argv[] ); static int GetFilenames ( int i_argc, char *ppsz_argv[] );
static void Usage ( int i_fashion ); static void Usage ( int i_fashion );
...@@ -256,7 +256,7 @@ int main( int i_argc, char *ppsz_argv[], char *ppsz_env[] ) ...@@ -256,7 +256,7 @@ int main( int i_argc, char *ppsz_argv[], char *ppsz_env[] )
/* /*
* Read configuration * Read configuration
*/ */
if( GetConfiguration( i_argc, ppsz_argv, ppsz_env ) ) /* parse cmd line */ if( GetConfiguration( &i_argc, ppsz_argv, ppsz_env ) ) /* parse cmd line */
{ {
intf_MsgDestroy(); intf_MsgDestroy();
return( errno ); return( errno );
...@@ -504,13 +504,13 @@ void main_PutIntVariable( char *psz_name, int i_value ) ...@@ -504,13 +504,13 @@ void main_PutIntVariable( char *psz_name, int i_value )
* stage, but most structures are not allocated, so only environment should * stage, but most structures are not allocated, so only environment should
* be used. * be used.
*****************************************************************************/ *****************************************************************************/
static int GetConfiguration( int i_argc, char *ppsz_argv[], char *ppsz_env[] ) static int GetConfiguration( int *i_argc, char *ppsz_argv[], char *ppsz_env[] )
{ {
int i_cmd; int i_cmd;
char *p_tmp; char *p_tmp;
/* Set default configuration and copy arguments */ /* Set default configuration and copy arguments */
p_main->i_argc = i_argc; p_main->i_argc = *i_argc;
p_main->ppsz_argv = ppsz_argv; p_main->ppsz_argv = ppsz_argv;
p_main->ppsz_env = ppsz_env; p_main->ppsz_env = ppsz_env;
...@@ -534,9 +534,22 @@ static int GetConfiguration( int i_argc, char *ppsz_argv[], char *ppsz_env[] ) ...@@ -534,9 +534,22 @@ static int GetConfiguration( int i_argc, char *ppsz_argv[], char *ppsz_env[] )
} }
} }
//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)
//still ok for real Darwin & when run from command line
#ifdef SYS_DARWIN1_3
if ( strncmp( ppsz_argv[ 1 ] , "-psn" , 4) == 0 ) //for example -psn_0_9306113
{
//ppsz_argv[ 1 ] = NULL; //GDMF!... I can't do this or else the MacOSX window server will not pick up the PSN and not register the app and we crash...hence the following kludge
//otherwise we'll get confused w/ argv[1] being an input file name
*i_argc = *i_argc - 1;
p_main->i_argc--;
return( 0 );
}
#endif
/* Parse command line options */ /* Parse command line options */
opterr = 0; opterr = 0;
while( ( i_cmd = getopt_long( i_argc, ppsz_argv, while( ( i_cmd = getopt_long( *i_argc, ppsz_argv,
psz_shortopts, longopts, 0 ) ) != EOF ) psz_shortopts, longopts, 0 ) ) != EOF )
{ {
switch( i_cmd ) switch( i_cmd )
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment