109 Commits

Author SHA1 Message Date
Andry Ogorodnik
63dbb9180f Update spawn-internal-windows.adb 2025-01-28 14:41:50 +00:00
Andry Ogorodnik
bc386ca20f Load stdout when a process died
On Windows we have an issue when not all data is loaded from
 the output pipe when a process terminates.

For eng/ide/gnatstudio#482
2025-01-28 15:37:09 +01:00
Andry Ogorodnik
6a178461af Update spawn-internal-monitor__windows.adb 2025-01-07 14:10:36 +00:00
Andry Ogorodnik
a47e0aa756 Fixing issues
- correct Append_Escaped_String to qoute arguments with spaces
- add Windows OS buffer for pipe to speedup reading
- fixing the monitor to set proper status when process can't be started
- fixing tests
- added new test for arguments quouting

(no-tn-check)
2025-01-07 15:03:37 +01:00
Maxim Reznik
c8d3359f80 We can't require process to be alive at kill call
because even if the user checks the process status before
calling the terminate procedure, the process can terminate
before `kill` is actually executed.

Refs gnatstudio#306
2024-05-17 12:38:01 +03:00
Vadim Godunko
d3adc00f25 Fix copy-paste error. 2023-04-05 17:21:31 +04:00
Vadim Godunko
14ced1534b Pass error code to subprogram to create text message. 2023-04-04 14:41:03 +03:00
Vadim Godunko
107c9a503d V928-020 Kill only running processes. 2023-04-04 12:48:53 +04:00
Vadim Godunko
c219cd6f86 Report async IO errors by Glib implementation. 2023-04-04 11:35:50 +04:00
Vadim Godunko
e4a72f6ca7 Use appropriate callbacks to notify about async IO errors. 2023-04-04 09:26:21 +03:00
Vadim Godunko
48a8f0e702 Update implementation on Windows for changes in API 2023-04-04 08:12:32 +03:00
Vadim Godunko
2cf6f5d51b Report sync IO errors on Windows/Glib. 2023-04-04 08:12:32 +03:00
Vadim Godunko
7a31ec9a55 Subprogram to take error message of GetLastError. 2023-04-04 08:12:32 +03:00
Vadim Godunko
5c5b5d849a Emitters for async IO error notifications. 2023-04-03 13:54:57 +04:00
Vadim Godunko
a80a69ed4a Update implementation to new API for POSIX.
Don't emit Error_Occured on sych IO errors.
2023-04-03 12:45:45 +04:00
Vadim Godunko
a2c2037328 Update implementation for new API for POSIX/Glib.
Don't emit Error_Occured on sync IO errors.
2023-04-03 12:31:19 +04:00
Vadim Godunko
ebf5c6df16 Change of API to report sync/async IO errors. 2023-04-03 12:10:02 +04:00
Anthony Leonardo Gracio
df2fe39b89 W216-024: Change file headers to Apache 2.0 with LLVM exceptions 2023-03-10 09:37:50 +01:00
Maxim Reznik
cc6620adad Fix Error_Occured event
when executable can't be launched.
2023-03-07 13:39:32 +02:00
Maxim Reznik
23b154cf57 Fix waiting for several processes. Add the test.
SIGCHLD signal could be triggered for several exited children. So
let's call waitpid untill no more children change state.

Fix #30
2023-02-10 18:05:47 +02:00
Maxim Reznik
ad86275b25 Revert "Fix waiting for several processes."
This reverts commit 23754957c6.

The fix was incorrect.
2023-02-10 17:52:32 +02:00
Adrien Boulanger
2ebb4fd256 Redundant with close for Windows_Glib build 2023-02-09 16:03:56 +00:00
Maxim Reznik
72537ad2ac Fix redundant with clause in body on Windows 2023-02-06 15:12:56 +02:00
Max Reznik
be86fca8af Merge branch 'topic/fix_chld_wait' into 'master'
Fix waiting for several processes.

See merge request eng/ide/spawn!37
2023-02-03 11:49:34 +00:00
Maxim Reznik
23754957c6 Fix waiting for several processes. 2023-02-03 13:41:25 +02:00