On Thu, Mar 4, 2010 at 09:51, Timothy Brownawell <tbrow...@prjek.net> wrote: > Timothy Brownawell wrote: >> >> Hm, maybe calling TerminateProcess() would be the better choice. The >> warning is "The state of global data maintained by dynamic-link libraries >> (DLLs) may be compromised if TerminateProcess is used rather than >> ExitProcess.", and since none of our shared libraries are for IPC I'd guess >> they don't use shared memory so we don't have to actually care. This would I >> think also be consistent with not calling exit() from our unix SIGINT >> handler, but just re-raising it after printing a nice message. > > This is committed now, so it should be in the next release.
I was pleased to see a fix for this go into 0.47 and I got around to upgrading my Windows box to that version this morning. Initially, it looked like this was working nicely and the annoying crash message no longer appeared when Ctrl+C was issued. However, it looks like the fix for this has an (at least in my view) undesirable side effect. I frequently run something like "mtn commit file1 file2 && mtn push", and the the first command tends to be what I cancel (e.g. if I realize while writing the commit message that I need to add additional files, etc). Previously, when the first command was canceled, the exit value was non-zero and the second command didn't run. Now, the first command is indicating successful completion despite the "operation canceled: user interrupt" message, and the second command runs. I can't think of a use case where this wold be the desired behavior (perhaps I'm missing something). Sorry for bringing this back up. Thanks, -Daniel _______________________________________________ Monotone-devel mailing list Monotone-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/monotone-devel