A few months ago I posted this to the gnupg-users mailing list:
http://marc.info/?l=gnupg-users&m=131116494408473&w=2
Basically, I would like --show-session-key to still print out the session key,
even if the file being read is truncated (and thus checksums fail). It just
requires changing the order of operations in that case. I've uploaded an
updated patch (nothing changed since the patch against 2.0.17--including, this
might still not be The Right Way To Do It).