X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=moebius2.git;a=blobdiff_plain;f=minimise.c;h=60f2d646e08d5495f72829ee8513dfaba3011ffd;hp=d52a685385b11c81e39e03eaa97819591f41823d;hb=a87b04c54fa371497d3815d399488355938d078d;hpb=cd84cbc4ca24530cfd110b53019706babc3986a5 diff --git a/minimise.c b/minimise.c index d52a685..60f2d64 100644 --- a/minimise.c +++ b/minimise.c @@ -63,8 +63,6 @@ static void badusage(void) { } static sig_atomic_t quit_requested; -sig_atomic_t quitting_reported_threads; -int quitting_last_iteration; static void sigint_handler(int ignored) { quit_requested= 1; @@ -103,6 +101,7 @@ int main(int argc, const char *const *argv) { r= sigaction(SIGINT,&sa,0); if (r) diee("sigaction SIGINT"); + mgraph_prepare(); graph_layout_prepare(); printing_init(); energy_init(); @@ -140,8 +139,8 @@ int main(int argc, const char *const *argv) { for (;;) { if (quit_requested) { - fprintf(stderr,"SIGINT caught, quitting soon.\n"); - quitting_last_iteration= 1; + fprintf(stderr,"SIGINT caught.\n"); + exit(1); } GA( gsl_multimin_fminimizer_iterate(minimiser) ); @@ -157,9 +156,6 @@ int main(int argc, const char *const *argv) { if (r==GSL_SUCCESS) break; assert(r==GSL_CONTINUE); } - - if (quitting_reported_threads) - exit(1); } if (final_file) {