|
From: | Jean Abou Samra |
Subject: | Re: -dgui option dropped in 2.24 - how to stop the black box on Windows now? |
Date: | Tue, 04 Apr 2023 14:16:18 +0200 |
User-agent: | Evolution 3.46.4 (3.46.4-1.fc37) |
Le mardi 04 avril 2023 à 12:56 +0100, Richard Shann a écrit :
I don't understand, I'm afraid. Denemo only makes calls to the g_spawn*
functions as documented. The function might_be_console_process() is
static - internal to glib - or rather to some executable that it calls,
apparently.The name and path of the lilypond executable is typed into Denemo and
the g_spawn call is made - so the only difference is that it is calling
lilypond.exe below the 2.24.0 folder rather than the lilypond-
windows.exe below the 2.22.0 folder. I've just tested this out by
downloading 2.22.0 to the home directory and telling the same Denemo
executable to execute lilypond.exe and lilypond-windows.exe
alternately. With the former I get the terminal popping up and not with
the latter.
Yes, I understand that. What I'm saying is that as you can see from the GLib source code, whether g_spawn_sync opens a new console or not depends on the parent process, specifically, whether it detects the parent process as being a GUI or a console process. If Denemo were correctly detected by GLib as a GUI process, I would expect GLib to spawn the LilyPond process without an extra console. Therefore, I suppose that something in Denemo or GLib is this detection incorrect.
You could try copying might_be_console_process
into your own code and seeing what result it yields on Windows and why.
signature.asc
Description: This is a digitally signed message part
[Prev in Thread] | Current Thread | [Next in Thread] |