﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
39	SIGSEGV/SIGTERM/SIGBREAK Signals are not caught	Valery V. Sedletski		"I have signals handler set up for some cleanup procedures in FORMAT/SYS/CHKDSK, like remounting the disk, but if I interrupt CHKDSK by Ctrl-Break, I see

{{{
^C
External process cancelled by a Ctrl+Break or another process
}}}

This is when running from UFAT32.DLL. But if I run the standalone version of CHKDSK, I get:

{{{

Signal 4 was received

}}}

and it cleanly remounts disk. In UFAT32.DLL case, we have disk in intermediary state (mounted in MOUNT_ACCEPT mode).

The cause, as I suspect, is that CHKDSK is a 32-bit program and sets up 32-bit exception handler, but CHKDSK routine is a 16-bit wrapper around a 32-bit ""chkdsk"" routine. So, we indeed run 16-bit routine, but an exception handler is 32-bit. This seems to be inconsistent, and thus, the 32-bit exception handler doesn't activate. So, we need a solution for this problem.
"	defect	closed	major	GA	IFS		medium	fixed	signal exception handler sigsegv sigint sigbreak	
