fixed sigint behavior