comparison upreckon-vcs @ 138:517dd43f06f8

Upreckon now properly reports exiting due to SIGINT to the calling process
author Oleg Oshmyan <chortos@inbox.lv>
date Tue, 24 May 2011 21:33:32 +0100
parents 796eb7667fb0
children dfde0f5e0984
comparison
equal deleted inserted replaced
137:f4361d557929 138:517dd43f06f8
128 128
129 if ntasks != 1: 129 if ntasks != 1:
130 say() 130 say()
131 say('Grand total: %g/%g weighted points; %d/%d problems solved fully' % (realscore, maxscore, nfulltasks, ntasks)) 131 say('Grand total: %g/%g weighted points; %d/%d problems solved fully' % (realscore, maxscore, nfulltasks, ntasks))
132 except KeyboardInterrupt: 132 except KeyboardInterrupt:
133 sys.exit('Exiting due to a keyboard interrupt.') 133 say('Exiting due to a keyboard interrupt.', end='', file=sys.stderr)
134 try:
135 import os, signal
136 signal.signal(signal.SIGINT, signal.SIG_DFL)
137 os.kill(os.getpid(), signal.SIGINT)
138 except Exception:
139 pass
140 # Do this even if we got no exceptions, just in case
141 say(file=sys.stderr)
142 sys.exit(1)
134 143
135 if options.pause: 144 if options.pause:
136 say('Press any key to exit...') 145 say('Press any key to exit...')
137 sys.stdout.flush() 146 sys.stdout.flush()
138 147