The default action performed by a process when it receives a signal depends on the signal type. Most (like SIGKILL)
cause the process to terminate. Others like SIGQUIT
cause the process to terminate and generate a core dump:

While "dont_hangup.sh" is still running, its parent process
has changed. The process id of the parent is 1
(not 12203 as before) and it is no longer associated
with a terminal device. Using nohup is equivalent to
ignoring the SIGHUP, that is: