mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-09 18:31:04 +00:00
Further amend fb7b7e52
This restores the previous behavior of runCommand().
When the child process could not be properly terminated the
error "RunCommand: could not terminate child process" was being
issued. However, in fb7b7e52
there was a misinterpretation
between this condition and the exit status of the child and
these two different errors were mixed up. They are now
disentangled again.
This commit is contained in:
parent
163844a6d0
commit
e18709b176
@ -1141,11 +1141,13 @@ cmd_ret const runCommand(string const & cmd)
|
||||
DWORD pret;
|
||||
BOOL success = GetExitCodeProcess(process.hProcess, &pret);
|
||||
bool valid = (pret == 0) && success;
|
||||
if (!success)
|
||||
pret = -1;
|
||||
if (!infile.empty())
|
||||
CloseHandle(startup.hStdInput);
|
||||
CloseHandle(process.hProcess);
|
||||
if (fclose(inf) != 0)
|
||||
valid = false;
|
||||
pret = -1;
|
||||
#elif defined (HAVE_PCLOSE)
|
||||
int const pret = pclose(inf);
|
||||
bool const valid = (WEXITSTATUS(pret) == 0);
|
||||
@ -1156,7 +1158,7 @@ cmd_ret const runCommand(string const & cmd)
|
||||
#error No pclose() function.
|
||||
#endif
|
||||
|
||||
if (!valid)
|
||||
if (pret == -1)
|
||||
perror("RunCommand: could not terminate child process");
|
||||
|
||||
return { valid, result };
|
||||
|
Loading…
Reference in New Issue
Block a user