Ok, I just managed to get Ctrl-C to terminate the webserver (after one more request, since the signal isn't detected whilst waiting to accept the next connection).
After mucking around, several different runs with FLX_FINALISE=1 to force a terminating GC I get this: ==12449== LEAK SUMMARY: ==12449== definitely lost: 830 bytes in 24 blocks ==12449== indirectly lost: 0 bytes in 0 blocks ==12449== possibly lost: 0 bytes in 0 blocks ==12449== still reachable: 30,701 bytes in 22 blocks ==12449== suppressed: 0 bytes in 0 blocks To repeat, this is the same several runs in sequence. So there is no leak according to Valgrind. If there were a leak the 24 or 22 number would be different in different runs. But it's not. Most of the leaks are in: flxusr::fdoc2html::setup::apply which is a bit weird. The setup routine for fdoc2html sets a number of global variables. These variables are thus in an fdoc2html instance thread frame, which should be collected and the destructor run, at least at program termination (because all roots are released after the first collection and the collector is run again). The thing that is actually leaking is a C++ string. So I guess this is just a faulty destructor. -- john skaller skal...@users.sourceforge.net http://felix-lang.org ------------------------------------------------------------------------------ _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language