User forums > Help

Problem with the abort build button

<< < (2/3) > >>

mandrav:
The abort button does two things:
1) marks the end of the queue so no more commands are run and compilation stops.
2) *Tries* to kill the process. This doesn't work in windows whereas in other platforms does.

Summary: it's not a bug, it behaves as expected.

Michael:
Hello,

Ok, I see. Thank you very much for the explanation.

Best wishes,
Michael

Urxae:

--- Quote from: mandrav on November 01, 2005, 10:44:05 pm ---The abort button does two things:
1) marks the end of the queue so no more commands are run and compilation stops.
2) *Tries* to kill the process. This doesn't work in windows whereas in other platforms does.

--- End quote ---

Wait, that works on non-Windows platforms? Why not on Windows? I looked at the source, and the line doing the actual work seems to be this one:

--- Code: ---ret = wxProcess::Kill(m_Pid, wxSIGTERM);
--- End code ---
According to the wxProcess::Kill documentation, "wxSIGNONE, wxSIGKILL and wxSIGTERM have the same meaning under both Unix and Windows".
So the question becomes: is this because of wxWidgets or because of C::B?
The only thing I could see that's possibly wrong with that line is that wxKILL_CHILDREN isn't passed as the third (flags) parameter. MinGW and normal GCC (and possibly other compilers, I wouldn't know) spawn child processes to do the actual work of compiling, so I would expect that parameter to be appropriate.
[later]I tried, that doesn't make it work either.[/later]


--- Quote ---Summary: it's not a bug, it behaves as expected.

--- End quote ---

I beg to differ. Knowing it not to work doesn't mean it isn't still a bug when it doesn't :P. Besides, as this thread shows some people expect it to actually work ;) (As did I the first time I pushed the Big Red ButtonTM).

mandrav:

--- Quote from: Urxae on November 02, 2005, 10:38:31 am ---
--- Quote ---Summary: it's not a bug, it behaves as expected.

--- End quote ---

I beg to differ. Knowing it not to work doesn't mean it isn't still a bug when it doesn't :P. Besides, as this thread shows some people expect it to actually work ;) (As did I the first time I pushed the Big Red ButtonTM).

--- End quote ---

"As expected" as in "as expected based on platform-related limitations"...
Although if you think you can make it kill the process under windows, feel free to share with us ;)

Michael:
Hello,

Now that I remember, sometime ago I have developed a kind of remote control that allows to start/stop external applications (e.g., server, player, etc.). To stop the create process, I used for some of them I used the flag wxSIGTERM and for the other the flag wxSIGKILL (the flag wxSIGTERM did not work as I wished). This worked under Windows XP SP2 and wxWidgets 2.6.1 and 2.6.2. The remote control has been developed under VS Studio C++ .NET 2003.

Best wishes,
Michael

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version