Move code removing "-psn_xxx" command line arguments to common code.
We need to do this when using any port under OS X, not just wxOSX, e.g. the -psn_xxx arguments passed by the Finder when launching the application, must also be ignored when using wxGTK. Closes #15432. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74703 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
6ce0ccf593
commit
9e9574fe45
@ -83,6 +83,27 @@ wxAppBase::wxAppBase()
|
|||||||
|
|
||||||
bool wxAppBase::Initialize(int& argcOrig, wxChar **argvOrig)
|
bool wxAppBase::Initialize(int& argcOrig, wxChar **argvOrig)
|
||||||
{
|
{
|
||||||
|
#ifdef __WXOSX__
|
||||||
|
// Mac OS X passes a process serial number command line argument when
|
||||||
|
// the application is launched from the Finder. This argument must be
|
||||||
|
// removed from the command line arguments before being handled by the
|
||||||
|
// application (otherwise applications would need to handle it)
|
||||||
|
//
|
||||||
|
// Notice that this has to be done for all ports that can be used under OS
|
||||||
|
// X (e.g. wxGTK) and not just wxOSX itself, hence this code is here and
|
||||||
|
// not in a port-specific file.
|
||||||
|
if ( argcOrig > 1 )
|
||||||
|
{
|
||||||
|
static const wxChar *ARG_PSN = wxT("-psn_");
|
||||||
|
if ( wxStrncmp(argvOrig[1], ARG_PSN, wxStrlen(ARG_PSN)) == 0 )
|
||||||
|
{
|
||||||
|
// remove this argument
|
||||||
|
--argcOrig;
|
||||||
|
memmove(argvOrig + 1, argvOrig + 2, argcOrig * sizeof(wxChar*));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif // __WXOSX__
|
||||||
|
|
||||||
if ( !wxAppConsole::Initialize(argcOrig, argvOrig) )
|
if ( !wxAppConsole::Initialize(argcOrig, argvOrig) )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -821,21 +821,6 @@ bool wxApp::Initialize(int& argc, wxChar **argv)
|
|||||||
InstallDebugAssertOutputHandler( NewDebugAssertOutputHandlerUPP( wxMacAssertOutputHandler ) );
|
InstallDebugAssertOutputHandler( NewDebugAssertOutputHandlerUPP( wxMacAssertOutputHandler ) );
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Mac OS X passes a process serial number command line argument when
|
|
||||||
// the application is launched from the Finder. This argument must be
|
|
||||||
// removed from the command line arguments before being handled by the
|
|
||||||
// application (otherwise applications would need to handle it)
|
|
||||||
if ( argc > 1 )
|
|
||||||
{
|
|
||||||
static const wxChar *ARG_PSN = wxT("-psn_");
|
|
||||||
if ( wxStrncmp(argv[1], ARG_PSN, wxStrlen(ARG_PSN)) == 0 )
|
|
||||||
{
|
|
||||||
// remove this argument
|
|
||||||
--argc;
|
|
||||||
memmove(argv + 1, argv + 2, argc * sizeof(wxChar*));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Cocoa supports -Key value options which set the user defaults key "Key"
|
Cocoa supports -Key value options which set the user defaults key "Key"
|
||||||
to the value "value" Some of them are very handy for debugging like
|
to the value "value" Some of them are very handy for debugging like
|
||||||
|
Loading…
Reference in New Issue
Block a user