=================================================================== RCS file: /home/cvs/OpenXM/src/kxx/sample_kanlib.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -p -r1.1 -r1.2 --- OpenXM/src/kxx/sample_kanlib.c 2004/02/29 03:00:37 1.1 +++ OpenXM/src/kxx/sample_kanlib.c 2004/09/05 00:51:18 1.2 @@ -1,4 +1,4 @@ -/* $OpenXM$ */ +/* $OpenXM: OpenXM/src/kxx/sample_kanlib.c,v 1.1 2004/02/29 03:00:37 takayama Exp $ */ /* This is a sample program to use kanlib.a gcc -g -O2 -g -D_BSD_SOURCE sample_kanlib.c -o sample_kanlib -ldl ../kan96xx/Kan/kanlib.a -L../../lib -lgmp -lgc @@ -21,6 +21,7 @@ gcc -g -O2 -g -D_BSD_SOURCE sample_kanlib.c -o sample_ extern int Quiet; extern JMP_BUF EnvOfStackMachine; +extern Calling_ctrlC_hook; void ctrlC(); @@ -34,7 +35,11 @@ main() { } while( fgets(s,1023,stdin) != NULL) { if (SETJMP(EnvOfStackMachine)) { - KSexecuteString(" ctrlC-hook "); /* Execute User Defined functions. */ + if (!Calling_ctrlC_hook) { + Calling_ctrlC_hook = 1; + KSexecuteString(" ctrlC-hook "); /* Execute User Defined functions. */ + } + Calling_ctrlC_hook = 0; KSexecuteString(" (Computation is interrupted.) "); continue; } else { }