When using a shell block with a :session, the specified shell is ignored and the original value of org-babel-sh-command (defaulting to the value of shell-file-name as set at load-time) gets used. The following patch fixes this, however there are still several other problems with how shells are invoked and how shell sessions are used that need to be addressed.