Fix a crash in wxExecute() in wxMSW too.
Don't dereference potentially NULL wxProcess pointer unconditionally. This should have been together with the changes of r73425, see #14931. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
27e8395ed0
commit
b640fa17f3
@ -862,23 +862,26 @@ long wxExecute(const wxString& cmd, int flags, wxProcess *handler,
|
||||
}
|
||||
|
||||
// Translate wxWidgets priority to Windows conventions.
|
||||
unsigned prio = handler->GetPriority();
|
||||
if ( prio <= 20 )
|
||||
dwFlags |= IDLE_PRIORITY_CLASS;
|
||||
else if ( prio <= 40 )
|
||||
dwFlags |= BELOW_NORMAL_PRIORITY_CLASS;
|
||||
else if ( prio <= 60 )
|
||||
dwFlags |= NORMAL_PRIORITY_CLASS;
|
||||
else if ( prio <= 80 )
|
||||
dwFlags |= ABOVE_NORMAL_PRIORITY_CLASS;
|
||||
else if ( prio <= 99 )
|
||||
dwFlags |= HIGH_PRIORITY_CLASS;
|
||||
else if ( prio <= 100 )
|
||||
dwFlags |= REALTIME_PRIORITY_CLASS;
|
||||
else
|
||||
if ( handler )
|
||||
{
|
||||
wxFAIL_MSG(wxT("invalid value of thread priority parameter"));
|
||||
dwFlags |= THREAD_PRIORITY_NORMAL;
|
||||
unsigned prio = handler->GetPriority();
|
||||
if ( prio <= 20 )
|
||||
dwFlags |= IDLE_PRIORITY_CLASS;
|
||||
else if ( prio <= 40 )
|
||||
dwFlags |= BELOW_NORMAL_PRIORITY_CLASS;
|
||||
else if ( prio <= 60 )
|
||||
dwFlags |= NORMAL_PRIORITY_CLASS;
|
||||
else if ( prio <= 80 )
|
||||
dwFlags |= ABOVE_NORMAL_PRIORITY_CLASS;
|
||||
else if ( prio <= 99 )
|
||||
dwFlags |= HIGH_PRIORITY_CLASS;
|
||||
else if ( prio <= 100 )
|
||||
dwFlags |= REALTIME_PRIORITY_CLASS;
|
||||
else
|
||||
{
|
||||
wxFAIL_MSG(wxT("invalid value of thread priority parameter"));
|
||||
dwFlags |= NORMAL_PRIORITY_CLASS;
|
||||
}
|
||||
}
|
||||
|
||||
bool ok = ::CreateProcess
|
||||
|
Loading…
Reference in New Issue
Block a user