Took care of those missing frees from failure conditions in wxExecute.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Ove Kaaven
1999-05-07 10:20:14 +00:00
parent 167e371869
commit 5fbecd9925

View File

@@ -257,6 +257,11 @@ long wxExecute( wxChar **argv, bool sync, wxProcess *process )
if (pipe(end_proc_detect) == -1) if (pipe(end_proc_detect) == -1)
{ {
wxLogSysError( _("Pipe creation failed") ); wxLogSysError( _("Pipe creation failed") );
#if wxUSE_UNICODE
mb_argc = 0;
while (mb_argv[mb_argc])
free(mb_argv[mb_argc++]);
#endif
return 0; return 0;
} }
@@ -269,6 +274,11 @@ long wxExecute( wxChar **argv, bool sync, wxProcess *process )
if (pid == -1) if (pid == -1)
{ {
wxLogSysError( _("Fork failed") ); wxLogSysError( _("Fork failed") );
#if wxUSE_UNICODE
mb_argc = 0;
while (mb_argv[mb_argc])
free(mb_argv[mb_argc++]);
#endif
return 0; return 0;
} }
else if (pid == 0) else if (pid == 0)