On the upgrade from Stretch to Buster there was a config
file conflict (with /etc/issue, but that doesn't matter).
dpkg allowed me to examine the conflict ("Z"). I could
adjust the old file using the mg editor, I could save the
config file using Ctrl-X Ctrl-S, but I could not leave mg
using Ctrl-X Ctrl-C. The Ctrl-C did not work.
AFAICT dpkg's "Z" session should set the terminal back to a
reasonable state before starting a new shell.
Regards
Harri
I can reproduce this in just the shell that's started. Ctrl-C doesn't seem to have any immediate effect. However once the shell is exited, the Ctrl-C causes dpkg to terminate early. I suspect that dpkg isn't creating a new foreground process group, so the SIGINT from Ctrl-C is being delivered to dpkg instead of the shell (or relevant sub-process like the editor). Adding a setsid or setpgid call somewhere in spawn_shell and/or show_diff would probably fix it.
I just noticed the same, ^C gets eaten; thankfully, my editor can do without, but this is probably severe for Emacs users. Please see whether the fix suggested works and apply it if so, if not, fix it somehow ;-)