hmmm...is it possible that there is a signal handler for INT inside SUB::foo? Try using USR1, INT has some pretty common uses, perhaps your catch_zap is being over written somewhere...
no there is no signal handler in SUB::Foo - maybe i should write one in foo ? but it seemed more logical to me to catch it from the main program ... basically i wrote all classes (yes, foo calls other classes ...), and the only SIG{INT} is the one in the main code (the one i posted)
where could i find some doc on USR1 ?
anyway, thanks, many thanks for your answer :)