(Thanks for all your replies to my issues @elextr - I know I've been posting a lot and fixing nothing myself, but I have too many backlogged commitments right now to start making pull requests.)
This patch resolves the problem, simply by matching the spawn API line limit to the messaging window limit...
``` diff --git a/src/spawn.c b/src/spawn.c index 1560d71a..5fdea3b5 100644 --- a/src/spawn.c +++ b/src/spawn.c @@ -1219,7 +1219,7 @@ gboolean spawn_with_callbacks(const gchar *working_directory, const gchar *comma { sc->cb.read = stdout_cb; sc->max_length = stdout_max_length ? stdout_max_length : - line_buffered ? 24576 : DEFAULT_IO_LENGTH; + line_buffered ? 1024 : DEFAULT_IO_LENGTH; } else { ```
I have tested.
I don't see the patch as causing harm, but I haven't done a full review of every use of the spawn API to see what they are doing with their line output.