}
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;
r= sigaction(SIGINT,&sa,0);
if (r) diee("sigaction SIGINT");
+ mgraph_prepare();
graph_layout_prepare();
printing_init();
energy_init();
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) );
if (r==GSL_SUCCESS) break;
assert(r==GSL_CONTINUE);
}
-
- if (quitting_reported_threads)
- exit(1);
}
if (final_file) {