This is follow up to the bug #399904 in Debian. It is now assigned to
libc6, but I think that this would be a bug of GnuPG 1.4.x.
The call sequence in question is:
g10/signal.c:got_fatal_signal
-> util/dotlock.c:dotlock_remove_lockfiles
-> util/dotlock.c:dotlock_destroy
-> free
Here, free is not a one of async-signal-safe functions (see: signal(7) ).
When the signal handler is called interrupting malloc or related,
"hang" might occur.
--