I think a SIGINT / SIGTERM handler in the main process is a good idea.
Since the main process has a list of temporary dirs, I don't think there's any point in having the children try to delete stuff.
I just pushed a TODO about this and will implement it after we do the 2.1 release.
John On 07/10/2013 09:29 AM, Konstantin Tokarev wrote:
10.07.2013, 19:14, "John Regehr" <[email protected]>:Unfortunately there are a few different cases. Case 1: the problem is directories matching the name creduce-* Case 1a: if C-Reduce is killed, it does not delete thesePreviously I've made a pull request which usied signal handler, however this handler should not be set up for children, otherwise killed child ruins all temporary directories. That was the case, so it was reverted. But there is another solution: each child cleans up its own tmp dir on kill or term, main process too (but it does not own anything). This way handler is not changed at run time => no races. 1a solved.
